From: MichaƂ Kiedrowicz Date: Mon, 27 Apr 2009 18:15:13 GMT Subject: Re: git grep '(' = segfault Message-ID: <20090427201513.5d598e3c@gmail.com> In-Reply-To: <37fcd2780904271046r7740ed42t3c9438e7aa93374@mail.gmail.com> Dmitry Potapov wrote: > 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: