From: Paul Mackerras Date: Tue, 11 Dec 2007 09:09:53 +0000 (+1100) Subject: gitk: Fix a couple of bugs X-Git-Url: http://privyetmir.co.uk/gitweb?a=commitdiff_plain;h=0c27886e469dcf81ed0ba7b2035e32a823224edc;p=gitk gitk: Fix a couple of bugs First, if we invalidate the layout for all rows (i.e. from row 0 on), we were calling undolayout with an empty string as the argument. Second, the comparison in make_disporder that tests if we need to call update_arcrows was the wrong way around. Signed-off-by: Paul Mackerras --- diff --git a/gitk b/gitk index 20e84e3..9d1dd77 100755 --- a/gitk +++ b/gitk @@ -600,7 +600,8 @@ proc modify_arc {v a} { while {$a != 0 && [lindex $varcrow($v) $a] eq {}} { set a [lindex $vupptr($v) $a] } - undolayout [lindex $varcrow($v) $a] + set r [expr {$a == 0? 0: [lindex $varcrow($v) $a]}] + undolayout $r } } @@ -739,7 +740,7 @@ proc make_disporder {start end} { set la $varcmod($curview) set lrow [lindex $varcrow($curview) $la] if {$la == 0 || $lrow eq {} || \ - $end < $lrow + [llength $varccommits($curview,$la)]} { + $end > $lrow + [llength $varccommits($curview,$la)]} { update_arcrows $curview } set ai [bsearch $vrownum($curview) $start]