Skip to content

Commit

Permalink
gitk: Allow unbalanced quotes/braces in commit headers
Browse files Browse the repository at this point in the history
When parsing commits, gitk treats the headers of the commit as tcl
lists.  This causes errors if the header contains an unbalanced quote
or open brace.  Splitting the line on spaces allows us to treat it as
a set of words instead of as a tcl list, which prevents errors.

Signed-off-by: Kevin Ballard <kevin@sb.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
  • Loading branch information
Kevin Ballard authored and Paul Mackerras committed Dec 21, 2008
1 parent 48027a9 commit 61f57cb
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions gitk
Original file line number Diff line number Diff line change
Expand Up @@ -1601,13 +1601,14 @@ proc parsecommit {id contents listed} {
set header [string range $contents 0 [expr {$hdrend - 1}]]
set comment [string range $contents [expr {$hdrend + 2}] end]
foreach line [split $header "\n"] {
set line [split $line " "]
set tag [lindex $line 0]
if {$tag == "author"} {
set audate [lindex $line end-1]
set auname [lrange $line 1 end-2]
set auname [join [lrange $line 1 end-2] " "]
} elseif {$tag == "committer"} {
set comdate [lindex $line end-1]
set comname [lrange $line 1 end-2]
set comname [join [lrange $line 1 end-2] " "]
}
}
set headline {}
Expand Down

0 comments on commit 61f57cb

Please sign in to comment.