diff --git a/src/ascii-parser.cc b/src/ascii-parser.cc index caef6864..57cf81f1 100644 --- a/src/ascii-parser.cc +++ b/src/ascii-parser.cc @@ -841,6 +841,7 @@ bool AsciiParser::ParseDictElement(std::string *out_key, switch (tyid) { APPLY_TO_METAVARIABLE_TYPE(PARSE_BASE_TYPE) case value::TYPE_ID_STRING: { + // FIXME: Use std::string if (array_qual) { std::vector strs; if (!ParseBasicTypeArray(&strs)) { @@ -4200,7 +4201,7 @@ bool AsciiParser::ParsePrimProps(std::map *props, return false; } } else if (type_name == value::kString) { - if (!ParseBasicPrimAttr(array_qual, primattr_name, + if (!ParseBasicPrimAttr(array_qual, primattr_name, pattr)) { return false; } diff --git a/tests/usda/shader-primvarreader-001.usda b/tests/usda/shader-primvarreader-001.usda index 1d3d0014..aaeb059e 100644 --- a/tests/usda/shader-primvarreader-001.usda +++ b/tests/usda/shader-primvarreader-001.usda @@ -2,8 +2,8 @@ def Shader "TexCoordReader" { - uniform token info:id = "UsdPrimvarReader_string" + uniform token info:id = "UsdPrimvarReader_float2" # UsdPreviewSurface spec 2.3 changes type for varname from `token` to `string`. string inputs:varname = "st" - string outputs:result + float2 outputs:result }