diff options
author | Jeff King <peff@peff.net> | 2008-08-25 02:15:05 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-08-24 23:28:02 -0700 |
commit | 0843acfd2c32dd8a8594731a0090d0934ccb123b (patch) | |
tree | 6982da4ae0ce4fd74a109e7db7e83c368bfd90e4 /revision.h | |
parent | 5760a6b094736e6f59eb32c7abb4cdbb7fca1627 (diff) | |
download | git-0843acfd2c32dd8a8594731a0090d0934ccb123b.tar.gz git-0843acfd2c32dd8a8594731a0090d0934ccb123b.tar.xz |
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>
Diffstat (limited to 'revision.h')
-rw-r--r-- | revision.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/revision.h b/revision.h index 1b045669a..91f194478 100644 --- a/revision.h +++ b/revision.h @@ -2,6 +2,7 @@ #define REVISION_H #include "parse-options.h" +#include "grep.h" #define SEEN (1u<<0) #define UNINTERESTING (1u<<1) @@ -92,7 +93,7 @@ struct rev_info { int show_log_size; /* Filter by commit log message */ - struct grep_opt *grep_filter; + struct grep_opt grep_filter; /* Display history graph */ struct git_graph *graph; |