Subject: gitk: crash when pressing Shift-F5 while still loading a diff

From: Peter Oberndorfer <[email-masked]>
Date: Mon, 29 Oct 2012 22:34:21 +0100

Hi,

i recently tested gitk a bit more myself and on some people in the office.
And i noticed when I repeatedly press Shift-F5 gitk
crashes/displays a message box [1].
my current version: c83ae78864493a30ed5b544b4910a384371a5eaf

This also happens a lot when gitk is still loading a big diff
and using View->Some view to change the current view.
(I have made a convenience shortcut "--all" to show all branches without having
the windows people going to the commandline)

Greetings Peter

crash1:
can't read "treediffs(7affa01c56f17778e92b57fd4fc8d749a672d930)": no such variable
can't read "treediffs(7affa01c56f17778e92b57fd4fc8d749a672d930)": no such variable
    while executing
"lsearch -exact $treediffs($ids) $fname"
    (procedure "makediffhdr" line 7)
    invoked from within
"makediffhdr $fname $ids"
    (procedure "getblobdiffline" line 61)
    invoked from within
"getblobdiffline file8 7affa01c56f17778e92b57fd4fc8d749a672d930"
    ("eval" body line 1)
    invoked from within
"eval $script"
    (procedure "dorunq" line 11)
    invoked from within
"dorunq"
    ("after" script)

crash2:
can't read "varcid(0,7affa01c56f17778e92b57fd4fc8d749a672d930)": no such element in array
can't read "varcid(0,7affa01c56f17778e92b57fd4fc8d749a672d930)": no such element in array
    while executing
"set a $varcid($v,$p)"
    (procedure "insertfakerow" line 6)
    invoked from within
"insertfakerow $nullid $p"
    (procedure "readdifffiles" line 29)
    invoked from within
"readdifffiles file7 7 71"
    ("eval" body line 1)
    invoked from within
"eval $script"
    (procedure "dorunq" line 11)
    invoked from within
"dorunq"
    ("after" script)

error3 (output on stderr):
oops rowofcommit no arc for 7affa01c

7affa01c is my top commit on the current branch.

Greetings Peter