Salome HOME
Fix for issue #889
authormpv <mpv@opencascade.com>
Fri, 4 Sep 2015 11:48:56 +0000 (14:48 +0300)
committermpv <mpv@opencascade.com>
Fri, 4 Sep 2015 11:48:56 +0000 (14:48 +0300)
src/Model/Model_Objects.cpp

index adb4363a858bba21064f3b26ca77af6a537fbe51..a1587ad019d9ba5a8b418ee24fc9542778bd9045 100644 (file)
@@ -934,7 +934,7 @@ void Model_Objects::updateResults(FeaturePtr theFeature)
     ResultPtr aBody = std::dynamic_pointer_cast<ModelAPI_Result>(*aResIter);
     if (aBody.get()) {
       std::shared_ptr<Model_Data> aData = std::dynamic_pointer_cast<Model_Data>(aBody->data());
-      if (!aData.get() || !aData->isValid() || aData->isDeleted()) { 
+      if (!aData.get() || !aData->isValid() || (!aBody->isDisabled() && aData->isDeleted())) { 
         // found a disappeared result => remove it
         theFeature->eraseResultFromList(aBody);
         // start iterate from beginning because iterator is corrupted by removing