From: mpv Date: Thu, 16 Apr 2015 10:10:01 +0000 (+0300) Subject: Fix for crash on multi-selection of group-vertices on imported body with Shift-key... X-Git-Tag: V_1.1.0~23^2~3 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=af851100774c4ff33b515c884abe0cd03c3f0528;p=modules%2Fshaper.git Fix for crash on multi-selection of group-vertices on imported body with Shift-key-pressed --- diff --git a/src/ModuleBase/ModuleBase_WidgetValidated.cpp b/src/ModuleBase/ModuleBase_WidgetValidated.cpp index 4db4e4bbc..caadc6be7 100644 --- a/src/ModuleBase/ModuleBase_WidgetValidated.cpp +++ b/src/ModuleBase/ModuleBase_WidgetValidated.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include @@ -69,6 +70,16 @@ bool ModuleBase_WidgetValidated::isValidSelection(const ModuleBase_ViewerPrs& th anAttribute->blockSetInitialized(isAttributeBlocked); aLoop->activateFlushes(true); + // In particular case the results are deleted and called as redisplayed inside of this + // highlight-selection, to they must be flushed as soon as possible. + // Example: selection of group-vertices subshapes with shift pressend on body. Without + // these 4 lines below the application crashes because of left presentations on + // removed results still in the viewer. + static Events_ID aDeletedEvent = Events_Loop::eventByName(EVENT_OBJECT_DELETED); + static Events_ID aRedispEvent = Events_Loop::eventByName(EVENT_OBJECT_TO_REDISPLAY); + aLoop->flush(aDeletedEvent); + aLoop->flush(aRedispEvent); + return aValid; }