Fix "git log -i --grep"
commit0843acfd2c32dd8a8594731a0090d0934ccb123b
authorJeff King <peff@peff.net>
Mon, 25 Aug 2008 06:15:05 +0000 (25 02:15 -0400)
committerJunio C Hamano <gitster@pobox.com>
Mon, 25 Aug 2008 06:28:02 +0000 (24 23:28 -0700)
tree6982da4ae0ce4fd74a109e7db7e83c368bfd90e4
parent5760a6b094736e6f59eb32c7abb4cdbb7fca1627
Fix "git log -i --grep"

This has been broken in v1.6.0 due to the reorganization of
the revision option parsing code. The "-i" is completely
ignored, but works fine in "git log --grep -i".

What happens is that the code for "-i" looks for
revs->grep_filter; if it is NULL, we do nothing, since there
are no grep filters. But that is obviously not correct,
since we want it to influence the later --grep option. Doing
it the other way around works, since "-i" just impacts the
existing grep_filter option.

Instead, we now always initialize the grep_filter member and
just fill in options and patterns as we get them. This means
that we can no longer check grep_filter for NULL, but
instead must check the pattern list to see if we have any
actual patterns.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-rev-list.c
revision.c
revision.h
t/t4202-log.sh