diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2012-09-29 11:41:27 +0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-09-29 11:40:58 -0700 |
commit | ad4813b3c2513c5dc7e84305ab8a393b32124977 (patch) | |
tree | 336f7cc4fdf78e070f8342eeee8a3f11b343012a /grep.c | |
parent | 652398a88e7c3d18b6820a2ae369b05d26dc757f (diff) | |
download | git-ad4813b3c2513c5dc7e84305ab8a393b32124977.tar.gz |
grep: prepare for new header field filter
grep supports only author and committer headers, which have the same
special treatment that later headers may or may not have. Check for
field type and only strip_timestamp() when the field is either author
or committer.
GREP_HEADER_FIELD_MAX is put in the grep_header_field enum to be
calculated automatically, correctly, as long as it's at the end of the
enum.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'grep.c')
-rw-r--r-- | grep.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -720,7 +720,14 @@ static int match_one_pattern(struct grep_pat *p, char *bol, char *eol, if (strncmp(bol, field, len)) return 0; bol += len; - saved_ch = strip_timestamp(bol, &eol); + switch (p->field) { + case GREP_HEADER_AUTHOR: + case GREP_HEADER_COMMITTER: + saved_ch = strip_timestamp(bol, &eol); + break; + default: + break; + } } again: |