gitk: Allow unbalanced quotes/braces in commit headers
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>
This commit is contained in:
parent
48027a918d
commit
61f57cb07d
5
gitk
5
gitk
@ -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 {}
|
||||
|
Loading…
Reference in New Issue
Block a user