From e8d6c6587d53b112d68d1cbb9dc4af0604310437 Mon Sep 17 00:00:00 2001 From: Joshua Thijssen Date: Wed, 12 Feb 2014 21:28:20 +0100 Subject: fixed bug66702 : regexiterator's invert flag doesn't work as expected --- ext/spl/spl_iterators.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'ext/spl/spl_iterators.c') diff --git a/ext/spl/spl_iterators.c b/ext/spl/spl_iterators.c index 2517366330..047b47f26b 100644 --- a/ext/spl/spl_iterators.c +++ b/ext/spl/spl_iterators.c @@ -2055,7 +2055,7 @@ SPL_METHOD(RegexIterator, accept) } if (intern->u.regex.flags & REGIT_INVERTED) { - RETVAL_BOOL(Z_LVAL_P(return_value)); + RETVAL_BOOL(! Z_LVAL_P(return_value)); } if (use_copy) { @@ -3692,6 +3692,7 @@ PHP_MINIT_FUNCTION(spl_iterators) #if HAVE_PCRE || HAVE_BUNDLED_PCRE REGISTER_SPL_SUB_CLASS_EX(RegexIterator, FilterIterator, spl_dual_it_new, spl_funcs_RegexIterator); REGISTER_SPL_CLASS_CONST_LONG(RegexIterator, "USE_KEY", REGIT_USE_KEY); + REGISTER_SPL_CLASS_CONST_LONG(RegexIterator, "INVERT_MATCH",REGIT_INVERTED); REGISTER_SPL_CLASS_CONST_LONG(RegexIterator, "MATCH", REGIT_MODE_MATCH); REGISTER_SPL_CLASS_CONST_LONG(RegexIterator, "GET_MATCH", REGIT_MODE_GET_MATCH); REGISTER_SPL_CLASS_CONST_LONG(RegexIterator, "ALL_MATCHES", REGIT_MODE_ALL_MATCHES); -- cgit v1.2.1