summaryrefslogtreecommitdiff
path: root/regexec.c
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2010-12-07 17:04:02 -0700
committerKarl Williamson <public@khwilliamson.com>2010-12-11 15:58:01 -0700
commit3a15e693385b1ab6186ad77f2fc208db1d0e05ea (patch)
treeb474df6fa1a82f6ee0117e92818bbcd8c97253a8 /regexec.c
parent40c7855679f2fac8010393d53040d01a1eecb050 (diff)
downloadperl-3a15e693385b1ab6186ad77f2fc208db1d0e05ea.tar.gz
regcomp: Allow freeing up bit in ANYOF flags
The flags field is fully used, and until the ANYOF node is split later in development, the CLASS bit will need to be freed up to give the space for other uses. This patch allows for this to easily be toggled.
Diffstat (limited to 'regexec.c')
-rw-r--r--regexec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/regexec.c b/regexec.c
index c1f1ae26ea..f2723e4cc6 100644
--- a/regexec.c
+++ b/regexec.c
@@ -6356,8 +6356,8 @@ S_reginclass(pTHX_ const regexp * const prog, register const regnode * const n,
match = TRUE;
}
- if (!match && (flags & ANYOF_CLASS) && ANYOF_CLASS_TEST_ANY_SET(n)) {
- PL_reg_flags |= RF_tainted;
+ if (!match && ANYOF_CLASS_TEST_ANY_SET(n)) {
+ PL_reg_flags |= RF_tainted; /* CLASS implies LOCALE */
if (
(ANYOF_CLASS_TEST(n, ANYOF_ALNUM) && isALNUM_LC(c)) ||
(ANYOF_CLASS_TEST(n, ANYOF_NALNUM) && !isALNUM_LC(c)) ||