From 9548e7adadaa631e1dc43c6ffb60cc746afebafd Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Mon, 2 Mar 2015 15:48:37 +0100 Subject: [PATCH] Kit: Fix possible crash Fix crash in KitOptionsPage related to setting the default kit Task-number: QTCREATORBUG-14053 Change-Id: Icf10b2596afa0a3b871aca0685a6f7d3a59ab022 Reviewed-by: Daniel Teske --- src/plugins/projectexplorer/kitmodel.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/projectexplorer/kitmodel.cpp b/src/plugins/projectexplorer/kitmodel.cpp index 1e094d914ac..a968799ae5e 100644 --- a/src/plugins/projectexplorer/kitmodel.cpp +++ b/src/plugins/projectexplorer/kitmodel.cpp @@ -246,6 +246,9 @@ void KitModel::markForRemoval(Kit *k) setDefaultNode(static_cast(newDefault)); } + if (node == m_defaultNode) + setDefaultNode(findItemAtLevel(2, [node](KitNode *kn) { return kn != node; })); + removeItem(node); if (node->widget->configures(0)) delete node; @@ -353,8 +356,9 @@ void KitModel::removeKit(Kit *k) } } - if (m_defaultNode == node) - m_defaultNode = 0; + if (node == m_defaultNode) + setDefaultNode(findItemAtLevel(2, [node](KitNode *kn) { return kn != node; })); + removeItem(node); delete node;