diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 77a882004455ffc6ade5d83080220dfa2cbdb666..350668faaea2c54b65490253e0e60f592486025f 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -1009,11 +1009,11 @@ void EditorManager::setCurrentEditorFromContextChange()
     setCurrentEditor(newCurrent);
 }
 
-void EditorManager::closeEditor(Core::IEditor *editor)
+void EditorManager::closeEditor(Core::IEditor *editor, bool askAboutModifiedEditors)
 {
     if (!editor)
         return;
-    closeEditors(QList<IEditor *>() << editor);
+    closeEditors(QList<IEditor *>() << editor, askAboutModifiedEditors);
 }
 
 void EditorManager::closeEditor(DocumentModel::Entry *entry)
diff --git a/src/plugins/coreplugin/editormanager/editormanager.h b/src/plugins/coreplugin/editormanager/editormanager.h
index 7c629d8945871cf6a984f8007cc538e63872208c..ee15724178286c8977505d7606e931eb5f03f00e 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.h
+++ b/src/plugins/coreplugin/editormanager/editormanager.h
@@ -142,6 +142,7 @@ public:
     bool saveEditor(IEditor *editor);
 
     bool closeEditors(const QList<IEditor *> &editorsToClose, bool askAboutModifiedEditors = true);
+    void closeEditor(IEditor *editor, bool askAboutModifiedEditors = true);
 
     MakeWritableResult makeFileWritable(IDocument *document);
 
@@ -268,7 +269,6 @@ private:
     static Internal::EditorView *viewForEditor(IEditor *editor);
     static Internal::SplitterOrView *findRoot(const Internal::EditorView *view, int *rootIndex = 0);
 
-    void closeEditor(IEditor *editor);
     void closeView(Internal::EditorView *view);
     void emptyView(Internal::EditorView *view);
     static void splitNewWindow(Internal::EditorView *view);
diff --git a/src/plugins/cppeditor/cppdoxygen_test.cpp b/src/plugins/cppeditor/cppdoxygen_test.cpp
index 13d0d2d3a0025c1ecd00da576a256c2705e1787d..c5821b39f535e7cc8b73a1ec63165e44f3040ab4 100644
--- a/src/plugins/cppeditor/cppdoxygen_test.cpp
+++ b/src/plugins/cppeditor/cppdoxygen_test.cpp
@@ -115,7 +115,7 @@ TestCase::TestCase(const QByteArray &input)
 
 TestCase::~TestCase()
 {
-    EditorManager::instance()->closeEditors(QList<Core::IEditor *>() << editor, false);
+    EditorManager::instance()->closeEditor(editor, false);
     QCoreApplication::processEvents(); // process any pending events
 
     // Remove the test file from the code-model
diff --git a/src/plugins/cpptools/cppmodelmanager_test.cpp b/src/plugins/cpptools/cppmodelmanager_test.cpp
index 0c35d4099a85fe6866cffe9385ee604806069e71..669c086d529eff6e1778b1b85e9854b41beafa93 100644
--- a/src/plugins/cpptools/cppmodelmanager_test.cpp
+++ b/src/plugins/cpptools/cppmodelmanager_test.cpp
@@ -540,8 +540,7 @@ void CppToolsPlugin::test_modelmanager_gc_if_last_cppeditor_closed()
     QVERIFY(mm->snapshot().contains(file));
 
     // Close file/editor
-    const QList<Core::IEditor*> editorsToClose = QList<Core::IEditor*>() << editor;
-    em->closeEditors(editorsToClose, /*askAboutModifiedEditors=*/ false);
+    em->closeEditor(editor, /*askAboutModifiedEditors=*/ false);
 
     // Check: File is removed from the snapshpt
     QVERIFY(!mm->workingCopy().contains(file));
diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp
index d29efd5af6b8fb2bd581c8e123d9c45861d981f9..d0c3bd8e370131f28f47383791180424b1c34d4d 100644
--- a/src/plugins/cvs/cvsplugin.cpp
+++ b/src/plugins/cvs/cvsplugin.cpp
@@ -1212,8 +1212,7 @@ bool CvsPlugin::describe(const QString &repositoryPath,
 void CvsPlugin::submitCurrentLog()
 {
     m_submitActionTriggered = true;
-    EditorManager::instance()->closeEditors(QList<IEditor*>()
-        << EditorManager::currentEditor());
+    EditorManager::instance()->closeEditor(EditorManager::currentEditor());
 }
 
 // Run CVS. At this point, file arguments must be relative to
diff --git a/src/plugins/debugger/disassembleragent.cpp b/src/plugins/debugger/disassembleragent.cpp
index 06f57e9de9aca4f4c5db86e349bf9ecd54754cb8..a587e4f36c41cbd566134a77127a7c450996b6de 100644
--- a/src/plugins/debugger/disassembleragent.cpp
+++ b/src/plugins/debugger/disassembleragent.cpp
@@ -124,10 +124,8 @@ DisassemblerAgentPrivate::DisassemblerAgentPrivate()
 
 DisassemblerAgentPrivate::~DisassemblerAgentPrivate()
 {
-    if (editor) {
-        EditorManager *editorManager = EditorManager::instance();
-        editorManager->closeEditors(QList<IEditor *>() << editor);
-    }
+    if (editor)
+        EditorManager::instance()->closeEditor(editor);
     editor = 0;
     delete locationMark;
     qDeleteAll(breakpointMarks);
diff --git a/src/plugins/debugger/sourceagent.cpp b/src/plugins/debugger/sourceagent.cpp
index fcf4b4ca59abaa6570e6f1f7fe71b3652479b979..b5bb5c83459a3a3179e00c279d4f71d183106b2b 100644
--- a/src/plugins/debugger/sourceagent.cpp
+++ b/src/plugins/debugger/sourceagent.cpp
@@ -76,10 +76,8 @@ SourceAgentPrivate::SourceAgentPrivate()
 
 SourceAgentPrivate::~SourceAgentPrivate()
 {
-    if (editor) {
-        EditorManager *editorManager = EditorManager::instance();
-        editorManager->closeEditors(QList<IEditor *>() << editor);
-    }
+    if (editor)
+        EditorManager::instance()->closeEditor(editor);
     editor = 0;
     delete locationMark;
 }
diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp
index 445f5a170a435be4f4e19fd3159808e1eefe2020..ab682fe6ee477460156ff5205ebe637ad4d1deab 100644
--- a/src/plugins/fakevim/fakevimplugin.cpp
+++ b/src/plugins/fakevim/fakevimplugin.cpp
@@ -1865,13 +1865,10 @@ void FakeVimPluginPrivate::handleDelayedQuit(bool forced, IEditor *editor)
     // This tries to simulate vim behaviour. But the models of vim and
     // Qt Creator core do not match well...
     EditorManager *editorManager = ICore::editorManager();
-    if (editorManager->hasSplitter()) {
+    if (editorManager->hasSplitter())
         triggerAction(Core::Constants::REMOVE_CURRENT_SPLIT);
-    } else {
-        QList<IEditor *> editors;
-        editors.append(editor);
-        editorManager->closeEditors(editors, !forced);
-    }
+    else
+        editorManager->closeEditor(editor, !forced);
 }
 
 void FakeVimPluginPrivate::handleDelayedQuitAll(bool forced)
diff --git a/src/plugins/git/gitsubmiteditor.cpp b/src/plugins/git/gitsubmiteditor.cpp
index d318580b5159e1d50407dfe749e95f72c9c030bd..5eb0d5f9f00d7ef18de9acda50ff1876328b45d8 100644
--- a/src/plugins/git/gitsubmiteditor.cpp
+++ b/src/plugins/git/gitsubmiteditor.cpp
@@ -181,7 +181,7 @@ void GitSubmitEditor::updateFileModel()
     } else {
         VcsBase::VcsBaseOutputWindow::instance()->append(errorMessage);
         m_forceClose = true;
-        Core::EditorManager::instance()->closeEditors(QList<IEditor*>() << this);
+        Core::EditorManager::instance()->closeEditor(this);
     }
 }
 
diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp
index b7aca23052f9d03d8ffaad36b8915612de8ee1dd..282db9f209c1704dde781bafe7ed3d843ef0f3a9 100644
--- a/src/plugins/perforce/perforceplugin.cpp
+++ b/src/plugins/perforce/perforceplugin.cpp
@@ -1296,8 +1296,7 @@ void PerforcePlugin::describe(const QString & source, const QString &n)
 void PerforcePlugin::submitCurrentLog()
 {
     m_submitActionTriggered = true;
-    Core::EditorManager *em = Core::EditorManager::instance();
-    em->closeEditors(QList<Core::IEditor*>() << Core::EditorManager::currentEditor());
+    Core::EditorManager::instance()->closeEditor(Core::EditorManager::currentEditor());
 }
 
 void PerforcePlugin::cleanCommitMessageFile()