From c507666fda5730b7d18ec4db0af5dcd85643f23d Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Thu, 22 Aug 2024 10:29:31 +0200 Subject: [PATCH] ProjectExplorer: Make sure kit removal is made persistent At least one caller deregisters kits so late in the shutdown process that the final KitManager::saveKits() has already run, so the removed kit showed up again on the next start. Fixes: QTCREATORBUG-31461 Change-Id: Ia9ad3f9ee9ba692b866f7105f944b308d7a22693 Reviewed-by: Christian Stenger --- src/plugins/projectexplorer/kitmanager.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp index 0ed18d799eb..d6544c130c3 100644 --- a/src/plugins/projectexplorer/kitmanager.cpp +++ b/src/plugins/projectexplorer/kitmanager.cpp @@ -651,6 +651,10 @@ void KitManager::deregisterKits(const QList kitList) for (auto it = removed.cbegin(); it != removed.cend(); ++it) emit instance()->kitRemoved(it->get()); emit instance()->kitsChanged(); + + // FIXME: TargetSetupPage potentially deregisters kits on destruction, after the final + // ICore::saveSettingsRequested() was emitted. + saveKits(); } void KitManager::setDefaultKit(Kit *k)