]> git.ipfire.org Git - thirdparty/git.git/commitdiff
diff: clean up external-diff argv setup
authorJeff King <peff@peff.net>
Fri, 6 Jan 2023 11:04:18 +0000 (06:04 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 6 Jan 2023 12:50:07 +0000 (21:50 +0900)
Since the previous commit, setting up the tempfile for an external diff
uses df->path from the diff_filespec, rather than the logical name. This
means add_external_diff_name() does not need to take a "name" parameter
at all, and we can drop it. And that in turn lets us simplify the
conditional for handling renames (when the "other" name is non-NULL).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff.c

diff --git a/diff.c b/diff.c
index c78ea27033f961a99489cba52c86a5be2b5d27c2..330f090f6ad0b4f5c2402391b4fb282742a5d5c6 100644 (file)
--- a/diff.c
+++ b/diff.c
@@ -4278,7 +4278,6 @@ static struct diff_tempfile *prepare_temp_file(struct repository *r,
 
 static void add_external_diff_name(struct repository *r,
                                   struct strvec *argv,
-                                  const char *name,
                                   struct diff_filespec *df)
 {
        struct diff_tempfile *temp = prepare_temp_file(r, df->path, df);
@@ -4308,11 +4307,9 @@ static void run_external_diff(const char *pgm,
        strvec_push(&cmd.args, name);
 
        if (one && two) {
-               add_external_diff_name(o->repo, &cmd.args, name, one);
-               if (!other)
-                       add_external_diff_name(o->repo, &cmd.args, name, two);
-               else {
-                       add_external_diff_name(o->repo, &cmd.args, other, two);
+               add_external_diff_name(o->repo, &cmd.args, one);
+               add_external_diff_name(o->repo, &cmd.args, two);
+               if (other) {
                        strvec_push(&cmd.args, other);
                        strvec_push(&cmd.args, xfrm_msg);
                }