From: mpv Date: Mon, 10 Oct 2016 14:20:18 +0000 (+0300) Subject: Fix for the issue #1819 : ExtrusionCut is not updated when the sketch is modified... X-Git-Tag: V_2.5.1~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=1e2e4075fcd80b415c4bc90b412e8e7562c94684;p=modules%2Fshaper.git Fix for the issue #1819 : ExtrusionCut is not updated when the sketch is modified after a boolean algorithm failed error. --- diff --git a/src/Model/Model_Update.cpp b/src/Model/Model_Update.cpp index a2f58ef2b..302dbd213 100755 --- a/src/Model/Model_Update.cpp +++ b/src/Model/Model_Update.cpp @@ -130,7 +130,8 @@ bool Model_Update::addModified(FeaturePtr theFeature, FeaturePtr theReason) { if (!aIsDisabled) { std::set > aNewSet; if (theFeature->data()->execState() == ModelAPI_StateMustBeUpdated || - theFeature->data()->execState() == ModelAPI_StateInvalidArgument) { // issue 1519 + theFeature->data()->execState() == ModelAPI_StateInvalidArgument || // issue 1519 + theFeature->data()->execState() == ModelAPI_StateExecFailed) { // do not forget that in this case all were the reasons aNewSet.insert(theFeature); } else { @@ -146,7 +147,8 @@ bool Model_Update::addModified(FeaturePtr theFeature, FeaturePtr theReason) { } #endif } else { // will be updated during the finish of the operation, or when it becomes enabled - if (theFeature->data()->execState() == ModelAPI_StateDone) + if (theFeature->data()->execState() == ModelAPI_StateDone || + theFeature->data()->execState() == ModelAPI_StateExecFailed) // fix issue 1819 theFeature->data()->execState(ModelAPI_StateMustBeUpdated); else return true; // do not need iteration deeply if it is already marked as modified or so