Merge branch 'jl/submodule-diff'
[gitweb.git] / diff.c
diff --git a/diff.c b/diff.c
index 8986873c0e9b1cd949a11dd1e59a85df080520d3..160dbfd7186ebaa34764a40dc7ba7d2338244a73 100644 (file)
--- a/diff.c
+++ b/diff.c
@@ -2299,7 +2299,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);
@@ -3830,6 +3830,7 @@ static char *run_textconv(const char *pgm, struct diff_filespec *spec,
        *arg = NULL;
 
        memset(&child, 0, sizeof(child));
+       child.use_shell = 1;
        child.argv = argv;
        child.out = -1;
        if (start_command(&child) != 0 ||