diff --git a/ext/spl/spl_iterators.c b/ext/spl/spl_iterators.c index 73c6a87e213b2..72ea8901665f1 100644 --- a/ext/spl/spl_iterators.c +++ b/ext/spl/spl_iterators.c @@ -1880,6 +1880,9 @@ PHP_METHOD(RegexIterator, accept) } result = php_pcre_replace_impl(intern->u.regex.pce, subject, ZSTR_VAL(subject), ZSTR_LEN(subject), replacement_str, -1, &count); + if (!result) { + RETURN_FALSE; + } if (intern->u.regex.flags & REGIT_USE_KEY) { zval_ptr_dtor(&intern->current.key);