Reading of attribute TDataStd_ExtStringList from CSFDB format is corrected for null strings: empty value is used.
Test bugs caf bug27277 added.
const TCollection_ExtendedString& operator()
(const Handle(StdObjMgt_Persistent)& theValue) const
{
- Handle(TCollection_HExtendedString) aString = theValue->ExtString();
- if (aString)
- return aString->String();
- else
- {
- static TCollection_ExtendedString anEmptyString;
+ static TCollection_ExtendedString anEmptyString;
+ if (theValue.IsNull())
return anEmptyString;
- }
+
+ Handle(TCollection_HExtendedString) aString = theValue->ExtString();
+ return aString ? aString->String() : anEmptyString;
}
};
--- /dev/null
+puts "==========="
+puts "0027277: geom/extruded_00/A0: OCAF document is not opened correctly"
+puts "==========="
+
+
+Open [locate_data_file bug27277_GEOM.sgd] D
+
+# check result of reading by number of attributes in dump
+set dump [XDumpDF D]
+if { ! [regexp {418 attributes dumped between 418} $dump] } {
+ puts "Error: expected 418 attributes in resulting document"
+}