From: Mikael Magnusson Date: Mon, 12 Jan 2009 12:25:11 GMT Subject: Re: [PATCH 2/2] grep: don't call regexec() for fixed strings Message-ID: <237967ef0901120425x79b7c1a4p238081a99694ae23@mail.gmail.com> In-Reply-To: <4967DB4A.2000702@lsrfire.ath.cx> 2009/1/10 René Scharfe : > Add the new flag "fixed" to struct grep_pat and set it if the pattern > is doesn't contain any regex control characters in addition to if the > flag -F/--fixed-strings was specified. > > diff --git a/grep.c b/grep.c > index 394703b..a1092df 100644 > --- a/grep.c > +++ b/grep.c > @@ -28,9 +28,31 @@ void append_grep_pattern(struct grep_opt *opt, const char *pat, > p->next = NULL; > } > > +static int isregexspecial(int c) > +{ > + return isspecial(c) || c == '$' || c == '(' || c == ')' || c == '+' || > + c == '.' || c == '^' || c == '{' || c == '|'; > +} Shouldn't this include '*' and '\'? -- Mikael Magnusson