Re: [PATCH 1/3] sed: Fix infinite loop on some false multi-byte matches

Stanislav Brabec <[email protected]>
Newsgroups gmane.comp.gnu.utils.bugs
Organization SUSE Linux, s. r. o.
Message-ID <[email protected]>
Paolo Bonzini wrote:
> On 02/15/2012 05:29 PM, Stanislav Brabec wrote:
> > int
> > main (void)
> > {
> >   struct re_pattern_buffer r;
> >   struct re_registers s;
> >   int e, rc = 0;
> >   if (setlocale (LC_CTYPE, "ja_JP.EUC-JP") == NULL)
> >     {
> >       puts ("setlocale failed");
> >       return 1;
> >     }
> >   memset (&r, 0, sizeof (r));
> >   memset (&s, 0, sizeof (s));
> >   re_set_syntax (RE_SYNTAX_POSIX_BASIC | RE_NO_POSIX_BACKTRACKING);
> 
> One difference is that sed sets RE_NO_SUB here.

ltrace of sed in the sed testcase shows 0x1050246, which matches
RE_SYNTAX_POSIX_BASIC | RE_NO_POSIX_BACKTRACKING

I did not see RE_NO_SUB (0x2000000) set there.

> I didn't try to run the program with the change, thouhg.

I just tested it. It still does not reproduce the problem.

-- 
Best Regards / S pozdravem,

Stanislav Brabec
software developer
---------------------------------------------------------------------
SUSE LINUX, s. r. o.                          e-mail: [email protected]
Lihovarská 1060/12                            tel: +49 911 7405384547
190 00 Praha 9                                  fax: +420 284 028 951
Czech Republic                                    http://www.suse.cz/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.