prepare_shell_cmd: add code comment
PATCH 1/1 prepare_shell_cmd: add code comment
From: Alexandr Miloslavskiy <[email protected]>
While debugging something else, I was quite puzzled to see that prepare_shell_cmd() duplicates the command before sending to sh, like:
sh -c "git-upload-pack '../testrepo/.git'" "git-upload-pack '../testrepo/.git'"
A Windows programmer myself, initially I thought that it's a bug.
Add a clarifying comment.
---
prepare_shell_cmd: add code comment
While debugging something else, I was quite puzzled to see that prepare_shell_cmd() duplicates the command before sending to sh, like:
sh -c "git-upload-pack '../testrepo/.git'" "git-upload-pack '../testrepo/.git'"
A Windows programmer myself, initially I thought that it's a bug.
Add a clarifying comment.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-574%2FSyntevoAlex%2F%230259(git)_doubled_prepare_shell_cmd-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-574/SyntevoAlex/#0259(git)_doubled_prepare_shell_cmd-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/574
run-command.c | 6 ++++++ 1 file changed, 6 insertions(+)
run-command.c +6 -0
@@ -284,6 +284,12 @@ static const char **prepare_shell_cmd(struct argv_array *out, const char **argv)argv_array_push (out, argv[0 ]); else argv_array_pushf(out, "%s \"$@\"", argv[0]); + +/* +* -c expects shell_name after command_string. +* Pushing entire original argv below will pass argv[0] +* as shell name. +*/ }argv_array_pushv (out, argv);
base-commit: 076cbdcd739aeb33c1be87b73aebae5e43d7bcc5
Signature · 1 line
gitgitgadget
Reminder: the patch is still there :(