From: spo Date: Wed, 16 Dec 2015 08:28:46 +0000 (+0300) Subject: Fix crash in model when create fillet from a script in GUI. X-Git-Tag: V_2.1.0~162^2~16 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2b0dd352493c1fbbe606b5399be5c675b03f064d;p=modules%2Fshaper.git Fix crash in model when create fillet from a script in GUI. --- diff --git a/src/Model/Model_Objects.cpp b/src/Model/Model_Objects.cpp index b34d47f14..f8ea0099e 100644 --- a/src/Model/Model_Objects.cpp +++ b/src/Model/Model_Objects.cpp @@ -139,13 +139,19 @@ void Model_Objects::addFeature(FeaturePtr theFeature, const FeaturePtr theAfterT myFeatures.Bind(aFeatureLab, theFeature); // must be before the event sending: for OB the feature is already added updateHistory(ModelAPI_Feature::group()); + // do not change the order: + // initData() + // sendUpdated() + // during python script with fillet constraint feature data should be + // initialized before using it in GUI + + // must be after binding to the map because of "Box" macro feature that + // creates other features in "initData" + initData(theFeature, aFeatureLab, TAG_FEATURE_ARGUMENTS); // event: feature is added, mist be before "initData" to update OB correctly on Duplicate: // first new part, then the content static Events_ID anEvent = Events_Loop::eventByName(EVENT_OBJECT_CREATED); ModelAPI_EventCreator::get()->sendUpdated(theFeature, anEvent); - // must be after binding to the map because of "Box" macro feature that - // creates other features in "initData" - initData(theFeature, aFeatureLab, TAG_FEATURE_ARGUMENTS); } else { // make feature has not-null data anyway theFeature->setData(Model_Data::invalidData()); theFeature->setDoc(myDoc);