php-src/ext/mbstring/tests/mbregex_stack_limit.phpt
Christoph M. Becker 3d89f92784 Skip tests for old versions instead of marking them XFAIL
According to commit 0eea9a6[1], these tests fail with old Oniguruma
versions; we are not sure which version of Oniguruma is required to let
them pass, but at least 6.9.3 is sufficient.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=0eea9a642941ab5d4c612f8092f186977afbb73e>
2019-09-30 14:14:23 +02:00

30 lines
635 B
PHP

--TEST--
Test oniguruma stack limit
--SKIPIF--
<?php
extension_loaded('mbstring') or die('skip mbstring not available');
if (!function_exists('mb_ereg')) die('skip mb_ereg not available');
if (version_compare(MB_ONIGURUMA_VERSION, '6.9.3') < 0) {
die('skip requires Oniguruma 6.9.3');
}
?>
--FILE--
<?php
$s = str_repeat(' ', 30000);
ini_set('mbstring.regex_stack_limit', 10000);
var_dump(mb_ereg('\\s+$', $s));
ini_set('mbstring.regex_stack_limit', 30000);
var_dump(mb_ereg('\\s+$', $s));
ini_set('mbstring.regex_stack_limit', 30001);
var_dump(mb_ereg('\\s+$', $s));
echo 'OK';
?>
--EXPECT--
bool(false)
bool(false)
int(1)
OK