From 2ddd0251b4c1586706f0e39c256a9b4ad171e383 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Tue, 23 Oct 2012 13:07:57 +0200 Subject: [PATCH] Editor: Fix crash on navigate back Task-number: QTCREATORBUG-8080 Change-Id: I782fbdda6b2ec46b7b8f4f3e84855b99d1847e7d Reviewed-by: Daniel Teske Reviewed-by: Eike Ziller --- src/plugins/coreplugin/editormanager/editorview.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) 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