* [PATCH/resend] gitk: Handle 'copy from' and 'copy to' in diff headers.
@ 2007-08-20 13:27 Johannes Sixt
0 siblings, 0 replies; only message in thread
From: Johannes Sixt @ 2007-08-20 13:27 UTC (permalink / raw)
To: Paul Mackerras; +Cc: Junio C Hamano, git
From: Johannes Sixt <johannes.sixt@telecom.at>
If a commit contained a copy operation, the file name was not correctly
determined, and the corresponding part of the patch could not be
navigated to from the list of files.
Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
---
This patch was probably lost in the noise.
-- Hannes
gitk | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/gitk b/gitk
index 57617d5..07b4a26 100755
--- a/gitk
+++ b/gitk
@@ -5116,8 +5116,8 @@ proc getblobdiffline {bdf ids} {
# the middle char will be a space, and the two bits either
# side will be a/name and b/name, or "a/name" and "b/name".
# If the name has changed we'll get "rename from" and
- # "rename to" lines following this, and we'll use them
- # to get the filenames.
+ # "rename to" or "copy from" and "copy to" lines following this,
+ # and we'll use them to get the filenames.
# This complexity is necessary because spaces in the filename(s)
# don't get escaped.
set l [string length $line]
@@ -5141,8 +5141,9 @@ proc getblobdiffline {bdf ids} {
set diffinhdr 0
} elseif {$diffinhdr} {
- if {![string compare -length 12 "rename from " $line]} {
- set fname [string range $line 12 end]
+ if {![string compare -length 12 "rename from " $line] ||
+ ![string compare -length 10 "copy from " $line]} {
+ set fname [string range $line [expr 6 + [string first " from " $line] ] end]
if {[string index $fname 0] eq "\""} {
set fname [lindex $fname 0]
}
@@ -5150,8 +5151,9 @@ proc getblobdiffline {bdf ids} {
if {$i >= 0} {
setinlist difffilestart $i $curdiffstart
}
- } elseif {![string compare -length 10 $line "rename to "]} {
- set fname [string range $line 10 end]
+ } elseif {![string compare -length 10 $line "rename to "] ||
+ ![string compare -length 8 $line "copy to "]} {
+ set fname [string range $line [expr 4 + [string first " to " $line] ] end]
if {[string index $fname 0] eq "\""} {
set fname [lindex $fname 0]
}
--
1.5.3.rc5.15.g8ddb
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2007-08-20 13:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-20 13:27 [PATCH/resend] gitk: Handle 'copy from' and 'copy to' in diff headers Johannes Sixt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).