Minor gitk bug - update on empty project : can't read "viewmainheadid_orig(1)": no such variable
- From
- Indigo Frankencastle <swediomurital@gmail.com>
- Date
- Jan 23, 2013, 14:00 UTC
- Message-ID
- <CAHioFH-Nf=J0pkyx+684o3bv-DKOitb_-co9zG+A_WYh8mT9LA@mail.gmail.com>
One of these "weird usage causes weird bugs".
One way to reproduce:
mkdir foo cd foo git init git commit -am "Initial" gitk & # or gitk --all & <F5>
Resulting in (gitk-git/gitk line 503 - 512):
can't read "viewmainheadid_orig(1)": no such variable
can't read "viewmainheadid_orig(1)": no such variable
while executing
"if {$mainheadid ne $viewmainheadid_orig($view)} {
if {$showlocalchanges} {
dohidelocalchanges
}
set viewmainheadid($view) $mainheadid
set vie..."
(procedure "updatecommits" line 13)
invoked from within
"updatecommits"
(command bound to event)As "$mainheadid" is not set, should there be something in the direction of this perhaps?
... Subject: [PATCH] gitk catch missing head id on update
--- gitk-git/gitk | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/gitk-git/gitk b/gitk-git/gitk index d93bd99..fa869d7 100755 --- a/gitk-git/gitk +++ b/gitk-git/gitk @@ -499,6 +499,11 @@ proc updatecommits {} { set hasworktree [hasworktree] rereadrefs + if {$mainheadid eq ""} { + # error_popup "[mc "Error updating commits:"] No main HEAD id" + show_status [mc "No main HEAD id"] + return {} + } set view $curview if {$mainheadid ne $viewmainheadid_orig($view)} { if {$showlocalchanges} {
--
1.7.10.4
...
Or perhaps some logic in:
proc rereadrefs {}
----
Best regards,
IF