The regex engine can't assume that SvSCREAM() remains set on its target.
authorNicholas Clark <nick@ccl4.org>
Thu, 30 Jun 2011 11:00:47 +0000 (13:00 +0200)
committerNicholas Clark <nick@ccl4.org>
Thu, 30 Jun 2011 11:00:47 +0000 (13:00 +0200)
commitf1905e1b1b0d9cd2c673369524247d7a0280d166
treeb15c774726882d8c7951e6fd202328361718439e
parent5ef88e32837b528ef762bb5bdc3074489cf43a85
The regex engine can't assume that SvSCREAM() remains set on its target.

Callers to the engine set REXEC_SCREAM in the flags when the target scalar is
studied, and the engine should use the study data. It's possible for embedded
code blocks to cause the target scalar to stop being studied. Hence the engine
needs to check for this, instead of simply assuming that the study data is
present and valid to read. This resolves #92696.
regexec.c
t/op/study.t