Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH] pull.sh: quote $upload_pack when passing it to git-fetch

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:06:02

Matthieu Moy [off-list ref] writes:
The previous code broke for example

  git pull --upload-pack 'echo --foo'

Reported-by: Joey Hess <redacted>
Fix-suggested-by: Junio C Hamano [off-list ref]
Signed-off-by: Matthieu Moy <redacted>
---
Junio wrote:
quoted
${upload_pack+"$upload_pack"} or something.
Indeed, we need to pass nothing, not the empty string if $upload_pack
is not defined.

This should fix it.
The problematic commit touches a lot more than upload-pack, but all
others that take user-supplied strings are meant for "git merge" or
"git rebase" that are properly quoted and then eval'ed, so this
should be sufficient.

Thanks.
quoted hunk
 git-pull.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/git-pull.sh b/git-pull.sh
index a814bf6..26c5e9f 100755
--- a/git-pull.sh
+++ b/git-pull.sh
@@ -295,7 +295,7 @@ test true = "$rebase" && {
 }
 orig_head=$(git rev-parse -q --verify HEAD)
 git fetch $verbosity $progress $dry_run $recurse_submodules $all $append \
-$upload_pack $force $tags $prune $keep $depth $unshallow $update_shallow \
+${upload_pack+"$upload_pack"} $force $tags $prune $keep $depth
$unshallow $update_shallow \
 $refmap --update-head-ok "$@" || exit 1
 test -z "$dry_run" || exit 0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help