From a244d17fe7e22d2246e232bba30be196923acfdd Mon Sep 17 00:00:00 2001 From: nds Date: Wed, 15 Apr 2015 21:55:44 +0300 Subject: [PATCH] A crash fix for creation a coincidence constraint with using an external point; an external validator append for an equal constraint. --- src/PartSet/PartSet_WidgetShapeSelector.cpp | 5 +++++ src/SketchPlugin/plugin-Sketch.xml | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/PartSet/PartSet_WidgetShapeSelector.cpp b/src/PartSet/PartSet_WidgetShapeSelector.cpp index 089bd98a6..5174050ff 100644 --- a/src/PartSet/PartSet_WidgetShapeSelector.cpp +++ b/src/PartSet/PartSet_WidgetShapeSelector.cpp @@ -119,6 +119,11 @@ void PartSet_WidgetShapeSelector::removeExternal() // the external feature should be removed with all references, sketch feature should be ignored std::set anIgnoredFeatures; anIgnoredFeatures.insert(sketch()); + // the current feature should be ignored, because it can use the external feature in the + // attributes and, therefore have a references to it. So, the delete functionality tries + // to delete this feature. Test case is creation of a constraint on external point, + // use in this control after an external point, the point of the sketch. + anIgnoredFeatures.insert(myFeature); XGUI_Workshop::deleteFeatures(anObjects, anIgnoredFeatures); } myExternalObject = ObjectPtr(); diff --git a/src/SketchPlugin/plugin-Sketch.xml b/src/SketchPlugin/plugin-Sketch.xml index 13fd7bfcf..6d73ae816 100644 --- a/src/SketchPlugin/plugin-Sketch.xml +++ b/src/SketchPlugin/plugin-Sketch.xml @@ -141,9 +141,12 @@ - + + + + @@ -182,12 +185,14 @@ icon=":icons/equal.png"> + + -- 2.39.2