From 6c921090bf0c080c08e191504dd5f92aa8ffb2be Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Wed, 18 Jun 2014 12:04:14 +0300 Subject: [PATCH] DiffEditor: Avoid "jump to file" for directories and nonexistent files Submodule diff sample (sub is the submodule's root directory): diff --git a/sub b/sub index 6ae5025..4b26500 160000 --- a/sub +++ b/sub @@ -1 +1 @@ -Subproject commit 6ae5025c9a66767e90cd320f9661e7694f7ea8b5 +Subproject commit 4b2650066d4143e8b7a9f4b19e46b96996a1dd90 Change-Id: I388de5bc50ceb1fcfc31a3a70ce8328c83fafa71 Reviewed-by: Jarek Kobus --- src/plugins/diffeditor/sidebysidediffeditorwidget.cpp | 4 +++- src/plugins/diffeditor/unifieddiffeditorwidget.cpp | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp b/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp index 04ab6e7ad7a..357eac2fe2f 100644 --- a/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp +++ b/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp @@ -1236,7 +1236,9 @@ void SideBySideDiffEditorWidget::jumpToOriginalFile(const QString &fileName, const QDir dir(m_controller->workingDirectory()); const QString absoluteFileName = dir.absoluteFilePath(fileName); - Core::EditorManager::openEditorAt(absoluteFileName, lineNumber, columnNumber); + QFileInfo fi(absoluteFileName); + if (fi.exists() && !fi.isDir()) + Core::EditorManager::openEditorAt(absoluteFileName, lineNumber, columnNumber); } void SideBySideDiffEditorWidget::slotLeftContextMenuRequested(QMenu *menu, diff --git a/src/plugins/diffeditor/unifieddiffeditorwidget.cpp b/src/plugins/diffeditor/unifieddiffeditorwidget.cpp index 71b1dba0395..ec887c6d727 100644 --- a/src/plugins/diffeditor/unifieddiffeditorwidget.cpp +++ b/src/plugins/diffeditor/unifieddiffeditorwidget.cpp @@ -758,7 +758,9 @@ void UnifiedDiffEditorWidget::jumpToOriginalFile(const QString &fileName, const QDir dir(m_controller->workingDirectory()); const QString absoluteFileName = dir.absoluteFilePath(fileName); - Core::EditorManager::openEditorAt(absoluteFileName, lineNumber, columnNumber); + QFileInfo fi(absoluteFileName); + if (fi.exists() && !fi.isDir()) + Core::EditorManager::openEditorAt(absoluteFileName, lineNumber, columnNumber); } void UnifiedDiffEditorWidget::setCurrentDiffFileIndex(int diffFileIndex)