On Tue, Dec 11, 2018 at 01:09:37PM +0900, Junio C Hamano wrote:
Junio C Hamano [off-list ref] writes:
quoted
John Passaro [off-list ref] writes:
quoted
I've noticed that in v2.19.1, when using git to pretty print
information about the signature, if git cannot find gpg (e.g. "git
config gpg.program nogpg"), it prints an error to stderr:
$ git show -s --pretty=%G?
fatal: cannot run nogpg: No such file or directory
N
I think the uninteded behaviour change was in 17809a98 ("Merge
branch 'jk/run-command-notdot'", 2018-10-30).
Perhaps something like this. There needs an additional test added
for this codepath, which I haven't done yet, though.
Thanks, both, for the report and the patch.
quoted hunk ↗ jump to hunk
diff --git a/run-command.c b/run-command.c
index d679cc267c..e2bc18a083 100644
--- a/run-command.c
+++ b/run-command.c
@@ -728,6 +728,8 @@ int start_command(struct child_process *cmd)
if (prepare_cmd(&argv, cmd) < 0) {
failed_errno = errno;
cmd->pid = -1;
+ if (!cmd->silent_exec_failure)
+ error_errno("cannot run %s", cmd->argv[0]);
goto end_of_spawn;
}
Yes, I think this is the right fix. For a test, I think we could just
do:
diff --git a/t/t0061-run-command.sh b/t/t0061-run-command.sh
index cf932c8514..866268dfd1 100755
--- a/t/t0061-run-command.sh
+++ b/t/t0061-run-command.sh
@@ -33,7 +33,8 @@ test_expect_success 'run_command is restricted to PATH' '
write_script should-not-run <<-\EOF &&
echo yikes
EOF
- test_must_fail test-tool run-command run-command should-not-run
+ test_must_fail test-tool run-command run-command should-not-run 2>err &&
+ grep should-not-run err
'
test_expect_success !MINGW 'run_command can run a script without a #! line' '
I assume you'll wrap that up into a real commit?
-Peff