]> granicus.if.org Git - php/commitdiff
don't emit any warnings in addition to an exception
authorAntony Dovgal <tony2001@php.net>
Wed, 14 Mar 2007 23:47:19 +0000 (23:47 +0000)
committerAntony Dovgal <tony2001@php.net>
Wed, 14 Mar 2007 23:47:19 +0000 (23:47 +0000)
ext/pcre/php_pcre.c
ext/pcre/tests/preg_replace_callback2.phpt

index e827ac64bd5040d5cb1676e25a5b33bd63b63cc0..865b5c7d2630bfc6ddea0fa7f467542b5eeaaee7 100644 (file)
@@ -912,7 +912,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);
        }
index e5e0e79dddc353df892a311aaea2363176b110df..e46aa556d0b336902a6f11694f1a48075b1eba05 100644 (file)
@@ -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"
@@ -39,7 +38,6 @@ array(1) {
 }
 string(3) "aBC"
 --UEXPECTF--
-Warning: preg_replace_callback(): Unable to call custom replacement function in %s on line %d
 array(3) {
   [0]=>
   unicode(12) "'a' 'b3' bcd"