Thanks to Nikita for pointing out the error source.
. Fixed bug #74546 (SIGILL in ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST).
(Laruence)
. Fixed bug #74589 (__DIR__ wrong for unicode character). (Anatol)
+ . Fixed bug #74606 (Segfault within try/catch/finally nesting in Generators).
+ (Bob, Nikita)
- intl:
. Fixed bug #74468 (wrong reflection on Collator::sortWithSortKeys). (villfa)
--- /dev/null
+--TEST--
+Bug #74606 (Segfault within try/catch/finally nesting in Generators)
+--FILE--
+<?php
+
+function gen() {
+ $array = ["foo"];
+ $array[] = "bar";
+
+ foreach ($array as $item) {
+ try {
+ try {
+ yield;
+ } finally {
+ echo "fin $item\n";
+ }
+ } catch (\Exception $e) {
+ echo "catch\n";
+ continue;
+ }
+ }
+}
+gen()->throw(new Exception);
+
+?>
+--EXPECT--
+fin foo
+catch
+fin bar
if (UNEXPECTED(generator->frozen_call_stack)) {
zend_generator_restore_call_stack(generator);
}
- zend_cleanup_unfinished_execution(execute_data, op_num, 0);
+ zend_cleanup_unfinished_execution(execute_data, op_num, catch_op_num);
}
}
/* }}} */