[PATCH] Fix "git log --diff-filter" bug
- From
Arjen Laarhoven <arjen@yaph.org>
- Date
- Dec 25, 2007, 11:06 UTC
- Message-ID
- <1198580807-18802-1-git-send-email-arjen@yaph.org>
In commit b7bb760d5ed4881422673d32f869d140221d3564 an optimization was made to avoid unnecessary diff generation. This was partly fixed in 99516e35d096f41e7133cacde8fbed8ee9a3ecd0, but obviously the '--diff-filter' option also needs the diff machinery in action.
Signed-off-by: Arjen Laarhoven <arjen@yaph.org> --- revision.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/revision.c b/revision.c index 7e2f4f1..6e85aaa 100644 --- a/revision.c +++ b/revision.c @@ -1290,8 +1290,10 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch if (revs->diffopt.output_format & ~DIFF_FORMAT_NO_OUTPUT) revs->diff = 1; - /* Pickaxe and rename following needs diffs */ - if (revs->diffopt.pickaxe || DIFF_OPT_TST(&revs->diffopt, FOLLOW_RENAMES)) + /* Pickaxe, diff-filter and rename following need diffs */ + if (revs->diffopt.pickaxe || + revs->diffopt.filter || + DIFF_OPT_TST(&revs->diffopt, FOLLOW_RENAMES)) revs->diff = 1; if (revs->topo_order)
-- 1.5.4.rc1.21.g0e545