Tcl let me assign two different types of values to the variable $n.
Prior to
1461c5f3 $n was the total number of bytes in the string;
but in that commit it also became the current info list for the
current file. This caused $c < $n to fail as $n was now treated
as 0 and we only loaded the first file in each buffer.
So use a different variable, like $i, instead.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
if {$z2 == -1} break
incr c
- set n [split [string range $buf_rdi $c [expr {$z1 - 2}]] { }]
+ set i [split [string range $buf_rdi $c [expr {$z1 - 2}]] { }]
merge_state \
[string range $buf_rdi $z1 [expr {$z2 - 1}]] \
- [lindex $n 4]? \
- [list [lindex $n 0] [lindex $n 2]] \
+ [lindex $i 4]? \
+ [list [lindex $i 0] [lindex $i 2]] \
[list]
set c $z2
+ incr c
}
if {$c < $n} {
set buf_rdi [string range $buf_rdi $c end]
if {$z2 == -1} break
incr c
- set n [split [string range $buf_rdf $c [expr {$z1 - 2}]] { }]
+ set i [split [string range $buf_rdf $c [expr {$z1 - 2}]] { }]
merge_state \
[string range $buf_rdf $z1 [expr {$z2 - 1}]] \
- ?[lindex $n 4] \
+ ?[lindex $i 4] \
[list] \
- [list [lindex $n 0] [lindex $n 2]]
+ [list [lindex $i 0] [lindex $i 2]]
set c $z2
+ incr c
}
if {$c < $n} {
set buf_rdf [string range $buf_rdf $c end]