gitk: Avoid a crash in selectline if commitinfo($id) isn't set
authorPaul Mackerras <paulus@samba.org>
Fri, 7 Mar 2008 10:19:18 +0000 (21:19 +1100)
committerPaul Mackerras <paulus@samba.org>
Fri, 7 Mar 2008 10:19:18 +0000 (21:19 +1100)
Occasionally I see a crash in selectline with commitinfo($id) not
set. This makes sure it is set by calling getcommit $id if it isn't.

Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk
diff --git a/gitk b/gitk
index f2ebc600e78fc0668c9fe84f7451e50ac0f99036..19325086bf68951df6a85d17beb1a513cbd8d64a 100755 (executable)
--- a/gitk
+++ b/gitk
@@ -1218,7 +1218,7 @@ proc chewcommits {} {
     if {$viewcomplete($curview)} {
        global commitidx varctok
        global numcommits startmsecs
-       global mainheadid commitinfo nullid
+       global mainheadid nullid
 
        if {[info exists pending_select]} {
            set row [first_real_row]
@@ -5494,6 +5494,9 @@ proc selectline {l isnew} {
     $ctext conf -state normal
     clear_ctext
     set linknum 0
+    if {![info exists commitinfo($id)]} {
+       getcommit $id
+    }
     set info $commitinfo($id)
     set date [formatdate [lindex $info 2]]
     $ctext insert end "[mc "Author"]: [lindex $info 1]  $date\n"