diff options
-rw-r--r-- | vcl/source/window/dockmgr.cxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/vcl/source/window/dockmgr.cxx b/vcl/source/window/dockmgr.cxx index 45708e8d709f..ee3ae7261221 100644 --- a/vcl/source/window/dockmgr.cxx +++ b/vcl/source/window/dockmgr.cxx @@ -376,6 +376,10 @@ void DockingManager::RemoveWindow( const vcl::Window *pWindow ) { if( (*it)->mpDockingWindow == pWindow ) { + // deleting wrappers calls set of actions which may want to use + // wrapper we want to delete - avoid crash using temporary owner + // while erasing + auto pTemporaryOwner = std::move(*it); mvDockingWindows.erase( it ); break; } |