mirror of
https://github.com/php/php-src.git
synced 2024-10-19 23:44:13 +00:00
34 lines
732 B
Plaintext
34 lines
732 B
Plaintext
|
--TEST--
|
||
|
Bug #35821 (array_map() segfaults when exception is throwed from the callback)
|
||
|
--FILE--
|
||
|
<?php
|
||
|
|
||
|
class Element
|
||
|
{
|
||
|
public function ThrowException ()
|
||
|
{
|
||
|
throw new Exception();
|
||
|
}
|
||
|
|
||
|
public static function CallBack(Element $elem)
|
||
|
{
|
||
|
$elem->ThrowException();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$arr = array(new Element(), new Element(), new Element());
|
||
|
array_map(array('Element', 'CallBack'), $arr);
|
||
|
|
||
|
echo "Done\n";
|
||
|
?>
|
||
|
--EXPECTF--
|
||
|
Warning: array_map(): An error occurred while invoking the map callback in %s on line %d
|
||
|
|
||
|
Fatal error: Uncaught exception 'Exception' in %s:%d
|
||
|
Stack trace:
|
||
|
#0 %s(%d): Element->ThrowException()
|
||
|
#1 [internal function]: Element::CallBack(Object(Element))
|
||
|
#2 %s(%d): array_map(Array, Array)
|
||
|
#3 {main}
|
||
|
thrown in %s on line %d
|