From: mbs Date: Fri, 14 Apr 2023 15:47:31 +0000 (+0100) Subject: std::set_difference requires sorted container to work correctly X-Git-Tag: V9_11_0a1~8 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=refs%2Ftlpr%2F6%2Fhead;p=modules%2Fshaper.git std::set_difference requires sorted container to work correctly --- diff --git a/src/XGUI/XGUI_Workshop.cpp b/src/XGUI/XGUI_Workshop.cpp index edc1d5e50..fde5034bf 100644 --- a/src/XGUI/XGUI_Workshop.cpp +++ b/src/XGUI/XGUI_Workshop.cpp @@ -2414,7 +2414,7 @@ bool XGUI_Workshop::canMoveFeature() QObjectPtrList anObjects = mySelector->selection()->selectedObjects(); QObjectPtrList aValidatedObjects; - std::list aSelectedFeatures; + std::set aSelectedFeatures; foreach (ObjectPtr anObject, anObjects) { if (!myModule->canApplyAction(anObject, anActionId)) continue; @@ -2423,7 +2423,7 @@ bool XGUI_Workshop::canMoveFeature() continue; aValidatedObjects.append(anObject); FeaturePtr aFeat = std::dynamic_pointer_cast(anObject); - aSelectedFeatures.push_back(aFeat); + aSelectedFeatures.insert(aFeat); } if (aValidatedObjects.size() != anObjects.size()) anObjects = aValidatedObjects;