X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModel%2FModel_AttributeReference.cpp;h=beb04549cffe4a51c359d83158e386613ddb07e8;hb=5303dd1fa6ad4411e38f8d36103c72109957e05c;hp=8a44eec0e20051292bb7d57617a0f72e9c1e7119;hpb=738a78303067900bf8e63f8918bdd1332af68605;p=modules%2Fshaper.git diff --git a/src/Model/Model_AttributeReference.cpp b/src/Model/Model_AttributeReference.cpp index 8a44eec0e..beb04549c 100644 --- a/src/Model/Model_AttributeReference.cpp +++ b/src/Model/Model_AttributeReference.cpp @@ -28,7 +28,7 @@ void Model_AttributeReference::setValue(ObjectPtr theObject) REMOVE_BACK_REF(aValue); TDF_Label anObjLab; - if (theObject.get() && theObject->data().get() && theObject->data()->isValid()) { + if (theObject.get() && theObject->data()->isValid()) { std::shared_ptr aData = std::dynamic_pointer_cast( theObject->data()); anObjLab = aData->label().Father(); // object label @@ -36,8 +36,6 @@ void Model_AttributeReference::setValue(ObjectPtr theObject) // same document, use reference attribute if (anObjLab.IsNull() || owner()->document() == theObject->document()) { - std::shared_ptr aDoc = - std::dynamic_pointer_cast(owner()->document()); if (anObjLab.IsNull()) { myRef->Set(myRef->Label()); } else { @@ -96,7 +94,8 @@ ObjectPtr Model_AttributeReference::value() bool Model_AttributeReference::isInitialized() { - if (myRef->Label() == myRef->Get()) { // empty reference is not initialized + if (myRef->Label() == myRef->Get() && !myRef->Label().IsAttribute(TDataStd_Comment::GetID())) { + // empty reference is not initialized return false; } return ModelAPI_AttributeReference::isInitialized();