From f6536ed2b23f3c5384ba9d89fa1ef5c48c6c129d Mon Sep 17 00:00:00 2001 From: Antony Dovgal Date: Wed, 14 Mar 2007 23:47:44 +0000 Subject: [PATCH] MFH: remove unnecessary warning in case of exception --- ext/pcre/php_pcre.c | 4 +++- ext/pcre/tests/preg_replace_callback2.phpt | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ext/pcre/php_pcre.c b/ext/pcre/php_pcre.c index bd1383b43a..c11fd4fda0 100644 --- a/ext/pcre/php_pcre.c +++ b/ext/pcre/php_pcre.c @@ -811,7 +811,9 @@ static int preg_do_repl_func(zval *function, char *subject, int *offsets, int co result_len = Z_STRLEN_P(retval_ptr); zval_ptr_dtor(&retval_ptr); } else { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to call custom replacement function"); + if (!EG(exception)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to call custom replacement function"); + } result_len = offsets[1] - offsets[0]; *result = estrndup(&subject[offsets[0]], result_len); } diff --git a/ext/pcre/tests/preg_replace_callback2.phpt b/ext/pcre/tests/preg_replace_callback2.phpt index a7f5a362dc..7989509aa1 100644 --- a/ext/pcre/tests/preg_replace_callback2.phpt +++ b/ext/pcre/tests/preg_replace_callback2.phpt @@ -22,7 +22,6 @@ var_dump(preg_replace_callback('~\A.~', 'g', array(array('xyz')))); var_dump(preg_replace_callback('~\A.~', create_function('$m', 'return strtolower($m[0]);'), 'ABC')); ?> --EXPECTF-- -Warning: preg_replace_callback(): Unable to call custom replacement function in %spreg_replace_callback2.php on line %d array(3) { [0]=> string(12) "'a' 'b3' bcd" -- 2.50.1