Re: git grep '(' = segfault
Dmitry Potapov <dpotapov@gmail.com> wrote:
Show 13 quoted lines
> Hi,
>
> I have tried a few version of Git and got "Segmentation fault" when
> run:
>
> $ git grep '('
>
> I am not very familiar with grep code and don't have time to dig
> into it right now. So, maybe someone else can take a look at it.
>
> Thanks,
> Dmitry
> --Try this patch, however I'm not sure if it is correct.
---
diff --git a/grep.c b/grep.c
index f3a27d7..5748355 100644
--- a/grep.c
+++ b/grep.c
@@ -84,10 +84,10 @@ static struct grep_expr *compile_pattern_atom(struct grep_pat **list)
case GREP_OPEN_PAREN:
*list = p->next;
x = compile_pattern_or(list);
- if (!x)
- return NULL;
if (!*list || (*list)->token != GREP_CLOSE_PAREN)
die("unmatched parenthesis");
+ if (!x)
+ return NULL;
*list = (*list)->next;
return x;
default: