Skip to contentSkip to conversation

gitk: Do not pick up file names of "copy from" lines

PATCH RESEND Superseded Johannes Sixt 1 participant 1 message Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/1 gitk: Do not pick up file names of "copy from" lines

From: Johannes Sixt <[email protected]>

A file copy would be detected only if the original file was modified in the same commit. This implies that there will be a patch listed under the original file name, and we would expect that clicking the original file name in the file list warps the patch window to that file's patch. (If the original file was not modified, the copy would not be detected in the first place, the copied file would be listed as "new file", and this whole matter would not apply.)

However, if the name of the copy is sorted after the original file's patch, then the logic introduced by commit d1cb298b0b (which picks up the link information from the "copy from" line) would overwrite the link information that is already present for the original file name, which was parsed earlier. Hence, this patch reverts part of said commit.

---
I did not see this appear in http://git.kernel.org/?p=gitk/gitk.git
so I assume it got lost in the noise, and resend it.

-- Hannes

 gitk |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)
gitk +1 -2
index b3ca704..1306382 100755
@@ -5216,8 +5216,7 @@ proc getblobdiffline {bdf ids} {
 	    set diffinhdr 0
 
 	} elseif {$diffinhdr} {
-	    if {![string compare -length 12 "rename from " $line] ||
-		![string compare -length 10 "copy from " $line]} {
+	    if {![string compare -length 12 "rename 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]
Signature · 1 line
1.5.3.716.gb8ce0-dirty