Skip to content

Commit

Permalink
git-gui: Correctly handle spaces in filepaths.
Browse files Browse the repository at this point in the history
Anytime are about to open a pipe on what may be user data we need to
make sure the value is escaped correctly into a Tcl list, so that the
executed subprocess will receive the right arguments.  For the most
part we were already doing this correctly, but a handful of locations
did not.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
  • Loading branch information
Shawn O. Pearce committed Jan 29, 2007
1 parent 463ca37 commit 8f6c07b
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions git-gui.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3087,7 +3087,8 @@ proc ls_tree {w tree_id name} {
lappend browser_stack($w) [list $tree_id $name]
$w conf -state disabled

set fd [open "| git ls-tree -z $tree_id" r]
set cmd [list git ls-tree -z $tree_id]
set fd [open "| $cmd" r]
fconfigure $fd -blocking 0 -translation binary -encoding binary
fileevent $fd readable [list read_ls_tree $fd $w]
}
Expand Down Expand Up @@ -3247,7 +3248,8 @@ proc show_blame {commit path} {
wm title $w "[appname] ([reponame]): File Viewer"

set blame_data($w,total_lines) 0
set fd [open "| git cat-file blob $commit:$path" r]
set cmd [list git cat-file blob "$commit:$path"]
set fd [open "| $cmd" r]
fconfigure $fd -blocking 0 -translation lf -encoding binary
fileevent $fd readable [list read_blame_catfile $fd $w $commit $path \
$texts $w.out.linenumber $w.out.file]
Expand Down

0 comments on commit 8f6c07b

Please sign in to comment.