summaryrefslogtreecommitdiffstats
path: root/userdiff.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2024-06-21 00:45:08 +0200
committerJunio C Hamano <gitster@pobox.com>2024-06-21 00:45:08 +0200
commit8ba7dbdefbc274628b6bdc0a4cb573c2fa08b2cf (patch)
tree6efe99411643f419d78bcdee1a62c84eb2bb070a /userdiff.h
parentMerge branch 'ds/doc-add-interactive-singlekey' (diff)
parentdiff: let external diffs report that changes are uninteresting (diff)
downloadgit-8ba7dbdefbc274628b6bdc0a4cb573c2fa08b2cf.tar.xz
git-8ba7dbdefbc274628b6bdc0a4cb573c2fa08b2cf.zip
Merge branch 'rs/diff-exit-code-with-external-diff'
"git diff --exit-code --ext-diff" learned to take the exit status of the external diff driver into account when deciding the exit status of the overall "git diff" invocation when configured to do so. * rs/diff-exit-code-with-external-diff: diff: let external diffs report that changes are uninteresting userdiff: add and use struct external_diff t4020: test exit code with external diffs
Diffstat (limited to 'userdiff.h')
-rw-r--r--userdiff.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/userdiff.h b/userdiff.h
index d726804c3e..7565930337 100644
--- a/userdiff.h
+++ b/userdiff.h
@@ -11,9 +11,14 @@ struct userdiff_funcname {
int cflags;
};
+struct external_diff {
+ char *cmd;
+ unsigned trust_exit_code:1;
+};
+
struct userdiff_driver {
const char *name;
- const char *external;
+ struct external_diff external;
const char *algorithm;
int binary;
struct userdiff_funcname funcname;