This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
fix "bad match" issue reported in perl #127705
authorYves Orton <demerphq@gmail.com>
Mon, 14 Mar 2016 22:30:02 +0000 (23:30 +0100)
committerYves Orton <demerphq@gmail.com>
Mon, 14 Mar 2016 23:31:59 +0000 (00:31 +0100)
commitce12e2548182b5bf6788188c520311eef0eca0ca
treed54b37ab4e01b03128d27930121451b710d935c6
parent595de7616f5ea9813e28dc502de1c480ef2a5a97
fix "bad match" issue reported in perl #127705

In 24be310237a0f8f19cfdb71de1b068b4ce9572a0 I reworked how
we stored the close_paren info in the regexp match state
structure. Unfortunately I missed a subtle aspect of the
logic which meant that in certain cases we were relying
on close_paren being true to avoid comparing it against
a false ARG value for things like CURLYX, which meant that
sometimes we would exit an stack frame prematurely. This
patch fixes that logic and makes it more clear (via macros)
what is going on.
regexec.c
regexp.h
t/re/pat.t