From 7f936367f829f0e3d312e086c292c97394ed0383 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Wed, 26 Jan 2022 19:34:31 +0100 Subject: [PATCH] Fix deletion bug in Selector::_preDestroy(). * Bug: In Selector::_preDestroy(), *do not* iterate over the _cellWidgets map as we destroy it's elements! We end up in destroyed ones... Instead destroy the first one until the map is empty. --- hurricane/src/viewer/Selector.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hurricane/src/viewer/Selector.cpp b/hurricane/src/viewer/Selector.cpp index dee89f82..f1289c67 100644 --- a/hurricane/src/viewer/Selector.cpp +++ b/hurricane/src/viewer/Selector.cpp @@ -118,7 +118,8 @@ namespace Hurricane { void Selector::_preDestroy() { - for ( auto iwidget : _cellWidgets ) detachFrom( iwidget.first, true ); + while ( not _cellWidgets.empty() ) + detachFrom( _cellWidgets.begin()->first, true ); PrivateProperty::_preDestroy(); }