From 872c4bf092bf5b7e8a563d3c841af0f8c6808739 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Tue, 21 May 2024 11:40:30 +0300 Subject: [PATCH] QmlDesigner: Fix double deletion of rewriter actions Actions were deleted after being inserted into actionsToRemove, which caused them to get deleted again, leading to crash. Change-Id: If6597f117859ca92cfc5af67c730e2f84e5c0639 Reviewed-by: Thomas Hartmann Reviewed-by: Qt CI Patch Build Bot --- .../qmldesigner/designercore/model/rewriteactioncompressor.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/plugins/qmldesigner/designercore/model/rewriteactioncompressor.cpp b/src/plugins/qmldesigner/designercore/model/rewriteactioncompressor.cpp index c4d96bb2505..edee6840ef6 100644 --- a/src/plugins/qmldesigner/designercore/model/rewriteactioncompressor.cpp +++ b/src/plugins/qmldesigner/designercore/model/rewriteactioncompressor.cpp @@ -58,7 +58,6 @@ void RewriteActionCompressor::compressImports(QList &actions) c actionsToRemove.append(action); actionsToRemove.append(addImportAction); addedImports.remove(import); - delete addImportAction; } else { removedImports.insert(import, action); } @@ -67,13 +66,11 @@ void RewriteActionCompressor::compressImports(QList &actions) c if (RewriteAction *duplicateAction = addedImports.value(import, 0)) { actionsToRemove.append(duplicateAction); addedImports.remove(import); - delete duplicateAction; addedImports.insert(import, action); } else if (RewriteAction *removeAction = removedImports.value(import, 0)) { actionsToRemove.append(action); actionsToRemove.append(removeAction); removedImports.remove(import); - delete removeAction; } else { addedImports.insert(import, action); }