[PATCH] git.sh: quote all paths
- From
Jonas Fonseca <fonseca@diku.dk>
- Date
- Oct 10, 2005, 09:26 UTC
- Message-ID
- <20051010092638.GC18009@diku.dk>
- In-Reply-To
- <7vmzlh7n7h.fsf@assigned-by-dhcp.cox.net>
This makes it handle spaces in paths.
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
Junio C Hamano <junkio@cox.net> wrote Mon, Oct 10, 2005:
Show 20 quoted lines
> Jonas Fonseca <fonseca@diku.dk> writes: > > > Support installing to paths including spaces. > > Remove any old .exe files so ln will succeed. > > > > This is not a complaint but I am just wondering if: > > > - $(INSTALL) -d -m755 $(DESTDIR)$(bindir) > > + $(INSTALL) -d -m755 "$(DESTDIR)$(bindir)" > > this is the right way to quote things. I suspect it might be > the responsibility of the user to quote them if she chooses to > set bindir or DESTDIR to a funky value, like this: > > $ make bindir="'My Documents\Programs'" > > Because depending on how funky the values of bindir and DESTDIR > are, we cannot say double-quote you are giving them is even the > right quoting (think double-quote itself as part of the name).
Yeah, ok, it could end up very wrong. I hope that this patch is acceptable. I've tested it lightly, and the core commands seems to work, there might be other git scripts that needs to be changed.
> The other "$X" change to cmd-renames is a good change (I thought > I heard HPA talking about that; maybe he sent one to me and I > dropped it on the floor by mistake, I dunno). Thanks.
I also sent a 'disguised' patch in <20051005131631.GA9442@diku.dk> ...
---
diff --git a/git.sh b/git.sh index 7400c16..19f89d8 100755 --- a/git.sh +++ b/git.sh @@ -1,7 +1,7 @@ #!/bin/sh cmd= -path=$(dirname $0) +path=$(dirname "$0") case "$#" in 0) ;; *) cmd="$1" @@ -12,13 +12,13 @@ case "$#" in exit 0 ;; esac - test -x $path/git-$cmd && exec $path/git-$cmd "$@" + test -x "$path/git-$cmd" && exec "$path/git-$cmd" "$@" case '@@X@@' in '') ;; *) - test -x $path/git-$cmd@@X@@ && exec $path/git-$cmd@@X@@ "$@" + test -x "$path/git-$cmd.exe" && exec "$path/git-$cmd.exe" "$@" ;; esac ;;
-- Jonas Fonseca