+proc getcommit {id {row {}}} {
+ global commitdata commitrow commitinfo nparents
+
+ if {$row eq {}} {
+ if {![info exists commitrow($id)]} {return 0}
+ set row $commitrow($id)
+ }
+ if {$row < [llength $commitdata]} {
+ parsecommit $id [lindex $commitdata $row] 1
+ } else {
+ readcommit $id
+ if {![info exists commitinfo($id)]} {
+ set commitinfo($id) {"No commit information available"}
+ set nparents($id) 0
+ }
+ }
+ return 1
+}
+