set fd_df [open "| git diff-files -z" r]
set fd_lo [open $ls_others r]
- fconfigure $fd_di -blocking 0 -translation binary
- fconfigure $fd_df -blocking 0 -translation binary
- fconfigure $fd_lo -blocking 0 -translation binary
+ fconfigure $fd_di -blocking 0 -translation binary -encoding binary
+ fconfigure $fd_df -blocking 0 -translation binary -encoding binary
+ fconfigure $fd_lo -blocking 0 -translation binary -encoding binary
fileevent $fd_di readable [list read_diff_index $fd_di $after]
fileevent $fd_df readable [list read_diff_files $fd_df $after]
fileevent $fd_lo readable [list read_ls_others $fd_lo $after]
incr c
set i [split [string range $buf_rdi $c [expr {$z1 - 2}]] { }]
+ set p [string range $buf_rdi $z1 [expr {$z2 - 1}]]
merge_state \
- [string range $buf_rdi $z1 [expr {$z2 - 1}]] \
+ [encoding convertfrom $p] \
[lindex $i 4]? \
[list [lindex $i 0] [lindex $i 2]] \
[list]
incr c
set i [split [string range $buf_rdf $c [expr {$z1 - 2}]] { }]
+ set p [string range $buf_rdf $z1 [expr {$z2 - 1}]]
merge_state \
- [string range $buf_rdf $z1 [expr {$z2 - 1}]] \
+ [encoding convertfrom $p] \
?[lindex $i 4] \
[list] \
[list [lindex $i 0] [lindex $i 2]]
set pck [split $buf_rlo "\0"]
set buf_rlo [lindex $pck end]
foreach p [lrange $pck 0 end-1] {
- merge_state $p ?O
+ merge_state [encoding convertfrom $p] ?O
}
rescan_done $fd buf_rlo $after
}
-blocking 0 \
-buffering full \
-buffersize 512 \
+ -encoding binary \
-translation binary
fileevent $fd writable [list \
write_update_indexinfo \
set info [lindex $s 2]
if {$info eq {}} continue
- puts -nonewline $fd "$info\t$path\0"
+ puts -nonewline $fd "$info\t[encoding convertto $path]\0"
display_file $path $new
}
-blocking 0 \
-buffering full \
-buffersize 512 \
+ -encoding binary \
-translation binary
fileevent $fd writable [list \
write_update_index \
?M {set new M_}
?? {continue}
}
- puts -nonewline $fd "$path\0"
+ puts -nonewline $fd "[encoding convertto $path]\0"
display_file $path $new
}
-blocking 0 \
-buffering full \
-buffersize 512 \
+ -encoding binary \
-translation binary
fileevent $fd writable [list \
write_checkout_index \
U? {continue}
?M -
?D {
- puts -nonewline $fd "$path\0"
+ puts -nonewline $fd "[encoding convertto $path]\0"
display_file $path ?_
}
}