RE: [PHP-DEV] PCRE jit bug with UTF-8 and lookbehind assertion

From: Date: Sun, 21 Feb 2016 10:42:35 +0000
Subject: RE: [PHP-DEV] PCRE jit bug with UTF-8 and lookbehind assertion
References: 1 2 3 4  Groups: php.internals 
Request: Send a blank email to internals+get-91341@lists.php.net to get a copy of this message
> -----Original Message----- > From: Ángel González [mailto:keisial@gmail.com] > Sent: Sunday, February 21, 2016 1:27 AM > To: Anatol Belski <anatol.php@belski.net> > Cc: 'Christian Schneider' <cschneid@cschneid.com>; 'PHP internals' > <internals@lists.php.net> > Subject: Re: [PHP-DEV] PCRE jit bug with UTF-8 and lookbehind assertion > > On 19/02/16 09:20, Anatol Belski wrote: > > Could you please write back, what is the out difference between those > > two commands? Thanks. Anatol > In the first case, it correctly outputs «x°11» (78 c2 b0 7a). With jit enabled it > produces «x z» (78 c2 7a). That is, it is only outputting the lower byte of the utf-8 > encoding of the U+00B0 character Tested on PHP 7.0.3 using the system libpcre > 8.38 > Were you putting the snippets into a file or testing on the console? I had an issue while testing this on the console, that some chars was partially swallowed by terminal (which was a utf-8 terminal). When putting into a file, the output is same for both - "x°z". Please see also the continued discussion in the original ticket https://bugs.exim.org/show_bug.cgi?id=1189 . The offsets delivered by PCRE also seem to be correct, and valgrind doesn't find anything. It were great if you could confirm these insights. Thanks Anatol

« previous php.internals (#91341) next »