diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp index 5d9cb25c06f04324af9c62dc563e114122d52f37..0460f37ee720099d61c6a0776942d5a2dc7ebe85 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.cpp +++ b/src/plugins/coreplugin/editormanager/editormanager.cpp @@ -1831,8 +1831,10 @@ bool EditorManager::restoreState(const QByteArray &state) if (!fileName.isEmpty() && !displayName.isEmpty()) { QFileInfo fi(fileName); + if (!fi.exists()) + continue; QFileInfo rfi(autoSaveName(fileName)); - if (fi.exists() && rfi.exists() && fi.lastModified() < rfi.lastModified()) { + if (rfi.exists() && fi.lastModified() < rfi.lastModified()) { openEditor(fileName, QString::fromUtf8(id)); } else { m_d->m_editorModel->addRestoredEditor(fileName, displayName, QString::fromUtf8(id)); diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp index 4491ae12d56e719f50f7019b9b2d8db44fa6849e..a7a6dad9e89e1b14eaf5b12db6e2be235b93d50f 100644 --- a/src/plugins/coreplugin/editormanager/editorview.cpp +++ b/src/plugins/coreplugin/editormanager/editorview.cpp @@ -784,6 +784,8 @@ void SplitterOrView::restoreState(const QByteArray &state) QByteArray id; QByteArray editorState; stream >> fileName >> id >> editorState; + if (!QFile::exists(fileName)) + return; IEditor *e = em->openEditor(view(), fileName, id, Core::EditorManager::IgnoreNavigationHistory | Core::EditorManager::NoActivate);