diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 8e79b50f6aa381e27dbda7c185948998394129ad..eda5a4926af3eaeefcf83fac80a069b599403226 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -1811,7 +1811,10 @@ void EditorManager::removeCurrentSplit()
 
 void EditorManager::removeAllSplits()
 {
+    if (!m_d->m_splitter->isSplitter())
+        return;
     IEditor *editor = m_d->m_currentEditor;
+    m_d->m_currentEditor = 0; // trigger update below
     if (editor && m_d->m_editorModel->isDuplicate(editor))
         editor = m_d->m_editorModel->originalForDuplicate(editor);
     m_d->m_splitter->unsplitAll();