diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-03-23 14:55:17 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-03-23 14:55:17 -0700 |
commit | 7d0cf357a31cc8a442342696788d776265482ce9 (patch) | |
tree | 9b5eb5adb7a70fb7f2aef1af23b06a9a83855c17 | |
parent | 98b256bd0857ab2192fdad27c26edbb0df3d96d1 (diff) | |
parent | 2cfe8a68ccba86f046080f890102a9a43361cfdd (diff) | |
download | git-7d0cf357a31cc8a442342696788d776265482ce9.tar.gz |
Merge branch 'jc/maint-diff-q-filter'
* jc/maint-diff-q-filter:
diff --quiet: disable optimization when --diff-filter=X is used
-rw-r--r-- | diff-lib.c | 3 | ||||
-rwxr-xr-x | t/t4040-whitespace-status.sh | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/diff-lib.c b/diff-lib.c index 1e22992cb1..2870de400e 100644 --- a/diff-lib.c +++ b/diff-lib.c @@ -103,7 +103,8 @@ int run_diff_files(struct rev_info *revs, unsigned int option) unsigned dirty_submodule = 0; if (DIFF_OPT_TST(&revs->diffopt, QUICK) && - DIFF_OPT_TST(&revs->diffopt, HAS_CHANGES)) + !revs->diffopt.filter && + DIFF_OPT_TST(&revs->diffopt, HAS_CHANGES)) break; if (!ce_path_match(ce, &revs->prune_data)) diff --git a/t/t4040-whitespace-status.sh b/t/t4040-whitespace-status.sh index a30b03bcf2..abc49348b1 100755 --- a/t/t4040-whitespace-status.sh +++ b/t/t4040-whitespace-status.sh @@ -60,4 +60,11 @@ test_expect_success 'diff-files -b -p --exit-code' ' git diff-files -b -p --exit-code ' +test_expect_success 'diff-files --diff-filter --quiet' ' + git reset --hard && + rm a/d && + echo x >>b/e && + test_must_fail git diff-files --diff-filter=M --quiet +' + test_done |