]> git.ipfire.org Git - thirdparty/git.git/commitdiff
diff --submodule=diff: don't print failure message twice
authorDavid Turner <dturner@twosigma.com>
Tue, 31 Aug 2021 13:12:57 +0000 (09:12 -0400)
committerJunio C Hamano <gitster@pobox.com>
Tue, 31 Aug 2021 17:12:13 +0000 (10:12 -0700)
When we fail to start a diff command inside a submodule, immediately
exit the routine rather than trying to finish the command and printing
a second message.

Signed-off-by: David Turner <dturner@twosigma.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
submodule.c

index 8aeff95cfd05d10bdf3eb29e9cfa1dafb79213cb..ab5f050f0ee6e6b800ba82b05f2f261bde3581ad 100644 (file)
@@ -720,8 +720,10 @@ void show_submodule_inline_diff(struct diff_options *o, const char *path,
                strvec_push(&cp.env_array, GIT_WORK_TREE_ENVIRONMENT "=.");
        }
 
-       if (start_command(&cp))
+       if (start_command(&cp)) {
                diff_emit_submodule_error(o, "(diff failed)\n");
+               goto done;
+       }
 
        while (strbuf_getwholeline_fd(&sb, cp.out, '\n') != EOF)
                diff_emit_submodule_pipethrough(o, sb.buf, sb.len);