if (aValueStr == NULL)
{
myMessageDriver->Send ("Cannot retrieve reference string from element", Message_Fail);
- return Standard_False;
}
- TCollection_AsciiString anEntry;
- if (XmlObjMgt::GetTagEntryString (aValueStr, anEntry) == Standard_False)
- {
- TCollection_ExtendedString aMessage =
- TCollection_ExtendedString ("Cannot retrieve reference from \"")
- + aValueStr + '\"';
- myMessageDriver->Send (aMessage, Message_Fail);
- return Standard_False;
- }
- // Find label by entry
- TDF_Label tLab; // Null label.
- if (anEntry.Length() > 0)
+ else
{
- TDF_Tool::Label(aReferenceArray->Label().Data(), anEntry, tLab, Standard_True);
+ TCollection_AsciiString anEntry;
+ if (XmlObjMgt::GetTagEntryString(aValueStr, anEntry) == Standard_False)
+ {
+ TCollection_ExtendedString aMessage =
+ TCollection_ExtendedString("Cannot retrieve reference from \"")
+ + aValueStr + '\"';
+ myMessageDriver->Send(aMessage, Message_Fail);
+ return Standard_False;
+ }
+ // Find label by entry
+ TDF_Label tLab; // Null label.
+ if (anEntry.Length() > 0)
+ {
+ TDF_Tool::Label(aReferenceArray->Label().Data(), anEntry, tLab, Standard_True);
+ }
+ aReferenceArray->SetValue(i++, tLab);
+ aCurNode = aCurElement->getNextSibling();
+ aCurElement = (LDOM_Element*)&aCurNode;
}
- aReferenceArray->SetValue(i++, tLab);
- aCurNode = aCurElement->getNextSibling();
- aCurElement = (LDOM_Element*)&aCurNode;
}
// Last reference
if (aValueStr == NULL)
{
myMessageDriver->Send ("Cannot retrieve reference string from element", Message_Fail);
- return Standard_False;
}
- TCollection_AsciiString anEntry;
- if (XmlObjMgt::GetTagEntryString (aValueStr, anEntry) == Standard_False)
- {
- TCollection_ExtendedString aMessage =
- TCollection_ExtendedString ("Cannot retrieve reference from \"")
- + aValueStr + '\"';
- myMessageDriver->Send (aMessage, Message_Fail);
- return Standard_False;
- }
- // Find label by entry
- TDF_Label tLab; // Null label.
- if (anEntry.Length() > 0)
+ else
{
- TDF_Tool::Label(aReferenceArray->Label().Data(), anEntry, tLab, Standard_True);
+ TCollection_AsciiString anEntry;
+ if (XmlObjMgt::GetTagEntryString(aValueStr, anEntry) == Standard_False)
+ {
+ TCollection_ExtendedString aMessage =
+ TCollection_ExtendedString("Cannot retrieve reference from \"")
+ + aValueStr + '\"';
+ myMessageDriver->Send(aMessage, Message_Fail);
+ return Standard_False;
+ }
+ // Find label by entry
+ TDF_Label tLab; // Null label.
+ if (anEntry.Length() > 0)
+ {
+ TDF_Tool::Label(aReferenceArray->Label().Data(), anEntry, tLab, Standard_True);
+ }
+ aReferenceArray->SetValue(i, tLab);
}
- aReferenceArray->SetValue(i, tLab);
return Standard_True;
}
for (Standard_Integer i = aL; i <= anU; i++)
{
- if (L.IsDescendant(aReferenceArray->Value(i).Root()))
+ const TDF_Label& label = aReferenceArray->Value(i);
+ if (!label.IsNull() && L.IsDescendant(label.Root()))
{
// Internal reference
TCollection_AsciiString anEntry;
- TDF_Tool::Entry(aReferenceArray->Value(i), anEntry);
+ TDF_Tool::Entry(label, anEntry);
XmlObjMgt_DOMString aDOMString;
XmlObjMgt::SetTagEntryString (aDOMString, anEntry);