Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
revisions: initialize revs->grep_filter using grep_init()
author
Junio C Hamano
<gitster@pobox.com>
Tue, 9 Oct 2012 23:40:03 +0000
(16:40 -0700)
committer
Junio C Hamano
<gitster@pobox.com>
Wed, 10 Oct 2012 06:21:29 +0000
(23:21 -0700)
Instead of using the hand-rolled initialization sequence,
use grep_init() to populate the necessary bits. This opens
the door to allow the calling commands to optionally read
grep.* configuration variables via git_config() if they
want to.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
grep.c
patch
|
blob
|
history
revision.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
c5c31d3
)
diff --git
a/grep.c
b/grep.c
index 279a55933c2e570ef3bb51da3cfd55357a5b0c86..a947a68a7f26d999db02fa86ccbaa3def8cf78b4 100644
(file)
--- a/
grep.c
+++ b/
grep.c
@@
-16,6
+16,11
@@
static struct grep_opt grep_defaults;
void init_grep_defaults(void)
{
struct grep_opt *opt = &grep_defaults;
void init_grep_defaults(void)
{
struct grep_opt *opt = &grep_defaults;
+ static int run_once;
+
+ if (run_once)
+ return;
+ run_once++;
memset(opt, 0, sizeof(*opt));
opt->relative = 1;
memset(opt, 0, sizeof(*opt));
opt->relative = 1;
diff --git
a/revision.c
b/revision.c
index a09e60bedbbbf2c6bdeeacc3d1032bcc1be9cb55..a4a931426f0b46f670f784c80ea280144091fa54 100644
(file)
--- a/
revision.c
+++ b/
revision.c
@@
-1048,9
+1048,9
@@
void init_revisions(struct rev_info *revs, const char *prefix)
revs->commit_format = CMIT_FMT_DEFAULT;
revs->commit_format = CMIT_FMT_DEFAULT;
+ init_grep_defaults();
+ grep_init(&revs->grep_filter, prefix);
revs->grep_filter.status_only = 1;
revs->grep_filter.status_only = 1;
- revs->grep_filter.pattern_tail = &(revs->grep_filter.pattern_list);
- revs->grep_filter.header_tail = &(revs->grep_filter.header_list);
revs->grep_filter.regflags = REG_NEWLINE;
diff_setup(&revs->diffopt);
revs->grep_filter.regflags = REG_NEWLINE;
diff_setup(&revs->diffopt);
@@
-1893,6
+1893,8
@@
int setup_revisions(int argc, const char **argv, struct rev_info *revs, struct s
revs->diffopt.abbrev = revs->abbrev;
diff_setup_done(&revs->diffopt);
revs->diffopt.abbrev = revs->abbrev;
diff_setup_done(&revs->diffopt);
+ grep_commit_pattern_type(GREP_PATTERN_TYPE_UNSPECIFIED,
+ &revs->grep_filter);
compile_grep_patterns(&revs->grep_filter);
if (revs->reverse && revs->reflog_info)
compile_grep_patterns(&revs->grep_filter);
if (revs->reverse && revs->reflog_info)