diff --git a/builtin-diff-index.c b/builtin-diff-index.c
index d90eba95a6be17bd0486e0311c2657b1f69ab7d9..556c506bfa7b5c5ef739d4203c585412a2764073 100644 (file)
--- a/builtin-diff-index.c
+++ b/builtin-diff-index.c
argc = setup_revisions(argc, argv, &rev, NULL);
for (i = 1; i < argc; i++) {
const char *arg = argv[i];
-
+
if (!strcmp(arg, "--cached"))
cached = 1;
else
return -1;
}
result = run_diff_index(&rev, cached);
- return rev.diffopt.exit_with_status ? rev.diffopt.has_changes: result;
+ if (DIFF_OPT_TST(&rev.diffopt, EXIT_WITH_STATUS))
+ return DIFF_OPT_TST(&rev.diffopt, HAS_CHANGES) != 0;
+ return result;
}