From 97b8ee167154b66ec59367d3cc6d6abf5a996440 Mon Sep 17 00:00:00 2001 From: Bert Wesarg Date: Thu, 9 Dec 2010 21:47:54 +0100 Subject: git-gui: name also new symlinks so and rename them only in the diff header Signed-off-by: Bert Wesarg Signed-off-by: Pat Thoyts --- lib/diff.tcl | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/diff.tcl b/lib/diff.tcl index 0b72924f7a..aa300891aa 100644 --- a/lib/diff.tcl +++ b/lib/diff.tcl @@ -406,12 +406,13 @@ proc read_diff {fd conflict_size cont_info} { || [string match {index *} $line]} { continue } - } - if {$line eq {deleted file mode 120000}} { - set line "deleted symlink" + # -- Name it symlink, not 120000 + # Note, that the original line is in $current_diff_header + regsub {^(deleted|new) file mode 120000} $line {\1 symlink} line } + # -- Automatically detect if this is a 3 way diff. # if {[string match {@@@ *} $line]} {set is_3way_diff 1} @@ -421,6 +422,7 @@ proc read_diff {fd conflict_size cont_info} { || [regexp {^(old|new) mode *} $line] || [string match {deleted file *} $line] || [string match {deleted symlink} $line] + || [string match {new symlink} $line] || [string match {Binary files * and * differ} $line] || $line eq {\ No newline at end of file} || [regexp {^\* Unmerged path } $line]} { -- cgit v1.2.3