From af851100774c4ff33b515c884abe0cd03c3f0528 Mon Sep 17 00:00:00 2001 From: mpv Date: Thu, 16 Apr 2015 13:10:01 +0300 Subject: [PATCH] Fix for crash on multi-selection of group-vertices on imported body with Shift-key-pressed --- src/ModuleBase/ModuleBase_WidgetValidated.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) 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; } -- 2.39.2