From 6eccba7398e720151f8f2dfaeaf162a5009a7edb Mon Sep 17 00:00:00 2001 From: Gaute Lindkvist Date: Thu, 28 Nov 2019 20:43:49 +0100 Subject: [PATCH] Fix crash when dragging plot from one multiplot to another --- .../ProjectDataModel/RimMultiPlotWindow.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ApplicationCode/ProjectDataModel/RimMultiPlotWindow.cpp b/ApplicationCode/ProjectDataModel/RimMultiPlotWindow.cpp index 120646f718..1e9e4ac2f8 100644 --- a/ApplicationCode/ProjectDataModel/RimMultiPlotWindow.cpp +++ b/ApplicationCode/ProjectDataModel/RimMultiPlotWindow.cpp @@ -195,7 +195,16 @@ void RimMultiPlotWindow::movePlotsToThis( const std::vector& plotsToMo { for ( size_t tIdx = 0; tIdx < plotsToMove.size(); tIdx++ ) { - plotsToMove[tIdx]->removeFromMdiAreaAndCollection(); + RimMultiPlotWindow* previousMultiPlotWindow = nullptr; + plotsToMove[tIdx]->firstAncestorOrThisOfType( previousMultiPlotWindow ); + if ( previousMultiPlotWindow ) + { + previousMultiPlotWindow->removePlot( plotsToMove[tIdx] ); + } + else + { + plotsToMove[tIdx]->removeFromMdiAreaAndCollection(); + } } size_t insertionStartIndex = 0;