aboutsummaryrefslogtreecommitdiffstats
path: root/diff.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2023-11-02 16:53:16 +0900
committerJunio C Hamano <gitster@pobox.com>2023-11-02 16:53:16 +0900
commit57b52cec46e1b342071df3addd3369a3b60a5916 (patch)
tree70b9b432dfc1650096c7d8781ab922128db2b403 /diff.c
parenta00b1127ce09bb963590faaef342618f719e7cc4 (diff)
parent5cc6b2d70bc55ab75913ee93d9ac96ad875fbb29 (diff)
downloadgit-57b52cec46e1b342071df3addd3369a3b60a5916.tar.gz
Merge branch 'jk/diff-result-code-cleanup' into maint-2.42
"git diff --no-such-option" and other corner cases around the exit status of the "diff" command has been corrected. * jk/diff-result-code-cleanup: diff: drop useless "status" parameter from diff_result_code() diff: drop useless return values in git-diff helpers diff: drop useless return from run_diff_{files,index} functions diff: die when failing to read index in git-diff builtin diff: show usage for unknown builtin_diff_files() options diff-files: avoid negative exit value diff: spell DIFF_INDEX_CACHED out when calling run_diff_index()
Diffstat (limited to 'diff.c')
-rw-r--r--diff.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/diff.c b/diff.c
index 28ba229476..bccb018da4 100644
--- a/diff.c
+++ b/diff.c
@@ -6982,16 +6982,14 @@ void diffcore_std(struct diff_options *options)
options->found_follow = 0;
}
-int diff_result_code(struct diff_options *opt, int status)
+int diff_result_code(struct diff_options *opt)
{
int result = 0;
diff_warn_rename_limit("diff.renameLimit",
opt->needed_rename_limit,
opt->degraded_cc_to_c);
- if (!opt->flags.exit_with_status &&
- !(opt->output_format & DIFF_FORMAT_CHECKDIFF))
- return status;
+
if (opt->flags.exit_with_status &&
opt->flags.has_changes)
result |= 01;