|
|
|
@ -304,13 +304,7 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
@@ -304,13 +304,7 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
|
|
|
|
|
|
|
|
|
|
DIFF_OPT_SET(&rev.diffopt, RECURSIVE); |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
* If the user asked for our exit code then don't start a |
|
|
|
|
* pager or we would end up reporting its exit code instead. |
|
|
|
|
*/ |
|
|
|
|
if (!DIFF_OPT_TST(&rev.diffopt, EXIT_WITH_STATUS) && |
|
|
|
|
check_pager_config("diff") != 0) |
|
|
|
|
setup_pager(); |
|
|
|
|
setup_diff_pager(&rev.diffopt); |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
* Do we have --cached and not have a pending object, then |
|
|
|
@ -421,3 +415,19 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
@@ -421,3 +415,19 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
|
|
|
|
|
refresh_index_quietly(); |
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void setup_diff_pager(struct diff_options *opt) |
|
|
|
|
{ |
|
|
|
|
/* |
|
|
|
|
* If the user asked for our exit code, then either they want --quiet |
|
|
|
|
* or --exit-code. We should definitely not bother with a pager in the |
|
|
|
|
* former case, as we will generate no output. Since we still properly |
|
|
|
|
* report our exit code even when a pager is run, we _could_ run a |
|
|
|
|
* pager with --exit-code. But since we have not done so historically, |
|
|
|
|
* and because it is easy to find people oneline advising "git diff |
|
|
|
|
* --exit-code" in hooks and other scripts, we do not do so. |
|
|
|
|
*/ |
|
|
|
|
if (!DIFF_OPT_TST(opt, EXIT_WITH_STATUS) && |
|
|
|
|
check_pager_config("diff") != 0) |
|
|
|
|
setup_pager(); |
|
|
|
|
} |
|
|
|
|