mirror of
https://github.com/php/php-src.git
synced 2026-04-17 13:01:02 +02:00
We can use unwind_exit instead of the evil zend_bailout without breaking the original behavior in this way because the original zend_bailout will longjmp out of the executor, so the exception will never be caught and it always triggers the E_ERROR here.
25 lines
504 B
PHP
25 lines
504 B
PHP
--TEST--
|
|
Test exception doesn't cause RSHUTDOWN bypass, variation 0
|
|
--INI--
|
|
assert.bail=1
|
|
assert.exception=1
|
|
--FILE--
|
|
<?php
|
|
|
|
define ("XXXXX", 1);
|
|
try {
|
|
assert(false);
|
|
} catch (AssertionError $error) {
|
|
echo "Caught\n";
|
|
}
|
|
|
|
?>
|
|
--EXPECTHEADERS--
|
|
Content-type: text/html; charset=UTF-8
|
|
--EXPECTF--
|
|
Fatal error: Uncaught AssertionError: assert(false) in %sexception_011.php:%d
|
|
Stack trace:
|
|
#0 %sexception_011.php(%d): assert(false, 'assert(false)')
|
|
#1 {main}
|
|
thrown in %sexception_011.php on line %d
|