diff --git a/src/plugins/projectexplorer/kitmodel.cpp b/src/plugins/projectexplorer/kitmodel.cpp
index 1e094d914ac960f2a668d71b5a77b00d85e116fb..a968799ae5e36525706636070ad5503f959cda69 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<KitNode *>(newDefault));
     }
 
+    if (node == m_defaultNode)
+        setDefaultNode(findItemAtLevel<KitNode *>(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<KitNode *>(2, [node](KitNode *kn) { return kn != node; }));
+
     removeItem(node);
     delete node;