ID:               41788
 Updated by:       [EMAIL PROTECTED]
 Reported By:      Sjon at hortensius dot net
-Status:           Open
+Status:           Bogus
 Bug Type:         Regexps related
 Operating System: linux 2.6.21.5
 PHP Version:      5.2.3
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

See preg_last_error().


Previous Comments:
------------------------------------------------------------------------

[2007-06-24 11:44:45] Sjon at hortensius dot net

Description:
------------
The preg_replace_callback manual-entry says:

 If matches are found, the new subject will be returned, otherwise
subject will be returned unchanged.

However; I have a testcase where no input is returned; and my callback
isn't called either. This seems to be caused by a required
pcre.backtrack_limit of 10000000

Shouldn't PHP return the input or an error giving some pointers about
this limit being reached?

Reproduce code:
---------------
<?PHP
$input = '{?value==input.value}';
$regexp = '~\{\?(?:\(?!?.+(==)?.+\)?)+\}{\1\/}~sU';

var_dump(preg_replace_callback($regexp, 'callback', $input));

function callback(){
        die('called');
}


Expected result:
----------------
I expect an error to be raised when pcre.backtrack_limit is reached

Actual result:
--------------
NULL is var_dumped


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=41788&edit=1

Reply via email to