From: Paul Mackerras Date: Tue, 6 Jun 2006 23:19:45 +0000 (+1000) Subject: gitk: Re-read the descendent/ancestor tag & head info on update X-Git-Url: https://privyetmir.co.uk/gitweb.cgi?a=commitdiff_plain;h=2d71bcccc81e3569d97dd1314c3ca0f080f4a70f;p=gitk gitk: Re-read the descendent/ancestor tag & head info on update Signed-off-by: Paul Mackerras --- diff --git a/gitk b/gitk index 91c11a3..9be10a4 100755 --- a/gitk +++ b/gitk @@ -238,6 +238,7 @@ proc updatecommits {} { catch {unset selectedline} catch {unset thickerline} catch {unset viewdata($n)} + discardallcommits readrefs showview $n } @@ -4988,15 +4989,30 @@ proc wrcomcan {} { # Stuff for finding nearby tags proc getallcommits {} { - global allcstart allcommits + global allcstart allcommits allcfd set fd [open [concat | git rev-list --all --topo-order --parents] r] + set allcfd $fd fconfigure $fd -blocking 0 set allcommits "reading" nowbusy allcommits restartgetall $fd } +proc discardallcommits {} { + global allparents allchildren allcommits allcfd + global desc_tags anc_tags alldtags tagisdesc allids desc_heads + + if {![info exists allcommits]} return + if {$allcommits eq "reading"} { + catch {close $allcfd} + } + foreach v {allcommits allchildren allparents allids desc_tags anc_tags + alldtags tagisdesc desc_heads} { + catch {unset $v} + } +} + proc restartgetall {fd} { global allcstart