From a809a0d2a665258ea0dc4a9851b71142a993d923 Mon Sep 17 00:00:00 2001
From: Tobias Hunger <tobias.hunger@nokia.com>
Date: Fri, 8 Apr 2011 10:40:59 +0200
Subject: [PATCH] VCS: Do not jump to any file when in the diff header

Do not jump to a file on double-click when in a diff header.

Task-number: QTCREATORBUG-4364
---
 src/plugins/vcsbase/vcsbaseeditor.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp
index 5b1dccd666b..428e26a6a18 100644
--- a/src/plugins/vcsbase/vcsbaseeditor.cpp
+++ b/src/plugins/vcsbase/vcsbaseeditor.cpp
@@ -49,6 +49,7 @@
 #include <projectexplorer/projectexplorer.h>
 #include <projectexplorer/project.h>
 #include <projectexplorer/session.h>
+#include <texteditor/basetextdocumentlayout.h>
 #include <texteditor/fontsettings.h>
 #include <texteditor/texteditorconstants.h>
 #include <utils/qtcassert.h>
@@ -708,6 +709,9 @@ void VCSBaseEditorWidget::jumpToChangeFromDiff(QTextCursor cursor)
     const QChar deletionIndicator = QLatin1Char('-');
     // find nearest change hunk
     QTextBlock block = cursor.block();
+    if (TextEditor::BaseTextDocumentLayout::foldingIndent(block) <= 1)
+        /* We are in a diff header, do not jump anywhere. DiffHighlighter sets the foldingIndent for us. */
+        return;
     for ( ; block.isValid() ; block = block.previous()) {
         const QString line = block.text();
         if (checkChunkLine(line, &chunkStart)) {
-- 
GitLab