From: Paul Mackerras Date: Sun, 31 Jul 2005 11:35:21 +0000 (+1000) Subject: Fix some bugs causing application error popups. X-Git-Tag: v0.99.3~17^2 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=1115fb38df53d1151eba3142f8acb9672ea2c9c4;p=git.git Fix some bugs causing application error popups. Specifically this should fix the following errors: wrong # args: should be "startdiff ids" (fix from Junio Hamano) can't read "filelines(....)": no such element in array can't unset "treepending": no such variable --- diff --git a/gitk b/gitk index 2aa970d5..efdb0a7f 100755 --- a/gitk +++ b/gitk @@ -1729,7 +1729,9 @@ proc mergediff {id} { set diffpindex -1 set diffmergegca [findgca $parents($id)] if {[info exists mergefilelist($id)]} { - showmergediff + if {$mergefilelist($id) ne {}} { + showmergediff + } } else { contmergediff {} } @@ -1753,7 +1755,7 @@ proc findgca {ids} { proc contmergediff {ids} { global diffmergeid diffpindex parents nparents diffmergegca - global treediffs mergefilelist diffids + global treediffs mergefilelist diffids treepending # diff the child against each of the parents, and diff # each of the parents against the GCA. @@ -1814,8 +1816,8 @@ proc contmergediff {ids} { proc showmergediff {} { global cflist diffmergeid mergefilelist parents - global diffopts diffinhunk currentfile diffblocked - global groupfilelast mergefds + global diffopts diffinhunk currentfile currenthunk filelines + global diffblocked groupfilelast mergefds groupfilenum grouphunks set files $mergefilelist($diffmergeid) foreach f $files { @@ -1826,6 +1828,8 @@ proc showmergediff {} { catch {unset currentfile} catch {unset currenthunk} catch {unset filelines} + catch {unset groupfilenum} + catch {unset grouphunks} set groupfilelast -1 foreach p $parents($diffmergeid) { set cmd [list | git-diff-tree -p $p $diffmergeid] @@ -2700,7 +2704,7 @@ proc diffvssel {dirn} { $ctext conf -state disabled $ctext tag delete Comments $ctext tag remove found 1.0 end - startdiff $newid [list $oldid] + startdiff [list $newid $oldid] } proc mkpatch {} {