gitk: Fix some bugs introduced by speedup changes
authorPaul Mackerras <paulus@samba.org>
Sun, 20 Nov 2005 12:08:22 +0000 (23:08 +1100)
committerPaul Mackerras <paulus@samba.org>
Sun, 20 Nov 2005 12:08:22 +0000 (23:08 +1100)
Commits that weren't read from git-rev-list, i.e. the ones displayed
with an open circle, were displayed incorrectly: the headline was
null if there was only one line, and the commit comment was put all
on one line.  Also, the terminal commits weren't displayed when -r
was used.

Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk

diff --git a/gitk b/gitk
index ab2d9b8adf177f685c10a64882b66bafb31119d2..58b4abc6930f4eb471d72e7a60ba41eb4f4ad8bd 100755 (executable)
--- a/gitk
+++ b/gitk
@@ -218,6 +218,8 @@ proc parsecommit {id contents listed olds} {
     set i [string first "\n" $comment]
     if {$i >= 0} {
        set headline [string trim [string range $comment 0 $i]]
+    } else {
+       set headline $comment
     }
     if {!$listed} {
        # git-rev-list indents the comment by 4 spaces;
@@ -226,6 +228,7 @@ proc parsecommit {id contents listed olds} {
        foreach line [split $comment "\n"] {
            append newcomment "    "
            append newcomment $line
+           append newcomment "\n"
        }
        set comment $newcomment
     }
@@ -1503,17 +1506,15 @@ proc drawrest {} {
     global numcommits ncmupdate
     global nextupdate startmsecs revlistorder
 
-    if {!$revlistorder} {
-       set level [decidenext]
-       if {$level >= 0} {
-           set phase drawgraph
-           while 1 {
-               lappend displayorder [lindex $todo $level]
-               set hard [updatetodo $level $datemode]
-               if {$hard} {
-                   set level [decidenext]
-                   if {$level < 0} break
-               }
+    set level [decidenext]
+    if {$level >= 0} {
+       set phase drawgraph
+       while 1 {
+           lappend displayorder [lindex $todo $level]
+           set hard [updatetodo $level $datemode]
+           if {$hard} {
+               set level [decidenext]
+               if {$level < 0} break
            }
        }
     }