diff --git a/diff-lib.c b/diff-lib.c
index f9a1a10cc0319270358d658cd5e83bd5633fbf49..5c5b05bfe32bc90484b5bd6a9c171e0f9b04fbd6 100644 (file)
--- a/diff-lib.c
+++ b/diff-lib.c
struct cache_entry *ce = active_cache[i];
int changed;
+ if (revs->diffopt.quiet && revs->diffopt.has_changes)
+ break;
+
if (!ce_path_match(ce, revs->prune_data))
continue;
struct cache_entry *ce = *ac;
int same = (entries > 1) && ce_same_name(ce, ac[1]);
+ if (revs->diffopt.quiet && revs->diffopt.has_changes)
+ break;
+
if (!ce_path_match(ce, pathspec))
goto skip_entry;