diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc
index cd014241635c7e5e4f18c80ed4e4249fb05acc25..ce316616f41bb13bb369ebb05b176a38f179fd0a 100644
--- a/doc/qtcreator.qdoc
+++ b/doc/qtcreator.qdoc
@@ -700,7 +700,7 @@
 
     \section1 Usage
 
-    You can find the version control menu entires in a sub-menu of the
+    You can find the version control menu entries in a sub-menu of the
     \gui{Tools} menu. The version control system displayed here is the system
     that manages the current project.
 
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 96cf69c6d3e502c977c7d0935532fb9465d93b5b..6cfec71e0f619521a3b8cd62dd7877965cd4c12d 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -628,6 +628,7 @@ QList<IFile *> EditorManager::filesForEditors(QList<IEditor *> editors) const
 
 bool EditorManager::closeAllEditors(bool askAboutModifiedEditors)
 {
+    m_d->m_editorModel->removeAllRestoredEditors();
     return closeEditors(openedEditors(), askAboutModifiedEditors);
 }
 
diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp
index b166ecd76e5903bb75e4d1091d515ecc1996c2ca..a201e5c9baecdef21a7ae90b31ca6a5bc193c066 100644
--- a/src/plugins/coreplugin/editormanager/editorview.cpp
+++ b/src/plugins/coreplugin/editormanager/editorview.cpp
@@ -181,6 +181,17 @@ void EditorModel::removeEditor(IEditor *editor)
     disconnect(editor, SIGNAL(changed()), this, SLOT(itemChanged()));
 }
 
+void EditorModel::removeAllRestoredEditors()
+{
+    for (int i = m_editors.count()-1; i >= 0; --i) {
+        if (!m_editors.at(i).editor) {
+            beginRemoveRows(QModelIndex(), i, i);
+            m_editors.removeAt(i);
+            endRemoveRows();
+        }
+    }
+}
+
 bool EditorModel::isDuplicate(IEditor *editor) const
 {
     return m_duplicateEditors.contains(editor);
diff --git a/src/plugins/coreplugin/editormanager/editorview.h b/src/plugins/coreplugin/editormanager/editorview.h
index 5754530736d85b070300b346daedddc1a67702bd..364be827f9453978d428b7ed460643bf48e73e2d 100644
--- a/src/plugins/coreplugin/editormanager/editorview.h
+++ b/src/plugins/coreplugin/editormanager/editorview.h
@@ -86,6 +86,7 @@ public:
     QList<Entry> entries() const { return m_editors; }
 
     void removeEditor(IEditor *editor);
+    void removeAllRestoredEditors();
     void emitDataChanged(IEditor *editor);
 
     QList<IEditor *> editors() const;
diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp
index b7239ae1b5f01898b3ce07c307d5cb7713d2bd8c..c6e8976f0cd22bb1dbac0f900810862919f79d17 100644
--- a/src/plugins/fakevim/fakevimhandler.cpp
+++ b/src/plugins/fakevim/fakevimhandler.cpp
@@ -1493,7 +1493,7 @@ EventResult FakeVimHandler::Private::handleMiniBufferModes(int key, int unmodifi
         updateMiniBuffer();
     } else if ((key == Key_Up || key == Key_PageUp) && isSearchMode()) {
         // FIXME: This and the three cases below are wrong as vim
-        // takes only matching entires in the history into account.
+        // takes only matching entries in the history into account.
         if (m_searchHistoryIndex > 0) {
             --m_searchHistoryIndex;
             showBlackMessage(m_searchHistory.at(m_searchHistoryIndex));