X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModelAPI%2FModelAPI_Object.cpp;h=b3f2671c92592aa359da6a0ebd1c4d756742f803;hb=506a83727ca8f8297fc1dcdf4ea40d7865c35450;hp=24a2b2d55c32740f5976a67d7bb7fc97c0f94b6b;hpb=83bbce5aee090aed21034874cd38c0c838f1733f;p=modules%2Fshaper.git diff --git a/src/ModelAPI/ModelAPI_Object.cpp b/src/ModelAPI/ModelAPI_Object.cpp index 24a2b2d55..b3f2671c9 100644 --- a/src/ModelAPI/ModelAPI_Object.cpp +++ b/src/ModelAPI/ModelAPI_Object.cpp @@ -12,7 +12,7 @@ bool ModelAPI_Object::isInHistory() { - if (myData.get() && myData->isValid()) { + if (myData->isValid()) { return myData->isInHistory(); } return true; // default value @@ -22,7 +22,7 @@ void ModelAPI_Object::setInHistory( const std::shared_ptr theObject, const bool theFlag) { if (isInHistory() != theFlag) { - if (myData.get() && myData->isValid()) { + if (myData->isValid()) { myData->setIsInHistory(theFlag); } myDoc->updateHistory(theObject); @@ -68,8 +68,9 @@ void ModelAPI_Object::setDoc(std::shared_ptr theDoc) void ModelAPI_Object::erase() { - if (myData) myData->erase(); - setData(DataPtr()); + if (myData->isValid() && myData != myData->invalidPtr()) + myData->erase(); + setData(myData->invalidPtr()); } bool ModelAPI_Object::isDisplayed()