aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/projectexplorer/projecttreewidget.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp
index 8c1443c2655..486075eb16f 100644
--- a/src/plugins/projectexplorer/projecttreewidget.cpp
+++ b/src/plugins/projectexplorer/projecttreewidget.cpp
@@ -178,7 +178,11 @@ void ProjectTreeWidget::foldersAboutToBeRemoved(FolderNode *, const QList<Folder
while(n) {
if (FolderNode *fn = qobject_cast<FolderNode *>(n)) {
if (list.contains(fn)) {
- m_explorer->setCurrentNode(n->projectNode());
+ ProjectNode *pn = n->projectNode();
+ // Make sure the node we are switching too isn't going to be removed also
+ while (list.contains(pn))
+ pn = pn->parentFolderNode()->projectNode();
+ m_explorer->setCurrentNode(pn);
break;
}
}