This is mostly to make it more consistent with the rest of git, which uses the shell to exec helpers. Signed-off-by: Jeff King <peff@xxxxxxxx> --- Consistency is the main advantage here. Though I think you can actually do craziness like setting GIT_EXTERNAL_DIFF='my-command $2 $3 && true' git diff to pick out some subset of the parameters, I can't imagine it is actually a good idea. diff.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/diff.c b/diff.c index 2794238..9bb40bc 100644 --- a/diff.c +++ b/diff.c @@ -2294,7 +2294,7 @@ static void run_external_diff(const char *pgm, } *arg = NULL; fflush(NULL); - retval = run_command_v_opt(spawn_arg, 0); + retval = run_command_v_opt(spawn_arg, RUN_USING_SHELL); remove_tempfile(); if (retval) { fprintf(stderr, "external diff died, stopping at %s.\n", name); -- 1.6.6.65.g050d2.dirty -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html