diff options
Diffstat (limited to 'Zend/zend_generators.c')
| -rw-r--r-- | Zend/zend_generators.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_generators.c b/Zend/zend_generators.c index 4b18f4221d..1cf9566ea5 100644 --- a/Zend/zend_generators.c +++ b/Zend/zend_generators.c @@ -198,6 +198,9 @@ static void zend_generator_dtor_storage(zend_generator *generator, zend_object_h if (finally_op_num) { ex->opline = &ex->op_array->opcodes[finally_op_num]; ex->fast_ret = NULL; + ex->delayed_exception = EG(exception); + EG(exception) = NULL; + generator->flags |= ZEND_GENERATOR_FORCED_CLOSE; zend_generator_resume(generator TSRMLS_CC); } |
