diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp index b70cdf287af..a3eaab0a5b3 100644 --- a/src/plugins/coreplugin/editormanager/editorview.cpp +++ b/src/plugins/coreplugin/editormanager/editorview.cpp @@ -413,11 +413,12 @@ void EditorView::goBackInNavigationHistory() while (m_currentNavigationHistoryPosition > 0) { --m_currentNavigationHistoryPosition; EditLocation location = m_navigationHistory.at(m_currentNavigationHistoryPosition); - IEditor *editor; + IEditor *editor = 0; if (location.document) { editor = em->activateEditorForDocument(this, location.document, EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch); - } else { + } + if (!editor) { editor = em->openEditor(this, location.fileName, location.id, EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch); if (!editor) { @@ -439,11 +440,12 @@ void EditorView::goForwardInNavigationHistory() return; ++m_currentNavigationHistoryPosition; EditLocation location = m_navigationHistory.at(m_currentNavigationHistoryPosition); - IEditor *editor; + IEditor *editor = 0; if (location.document) { editor = em->activateEditorForDocument(this, location.document, EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch); - } else { + } + if (!editor) { editor = em->openEditor(this, location.fileName, location.id, EditorManager::IgnoreNavigationHistory); if (!editor) { //TODO