From: Bob Weinand Date: Thu, 1 Dec 2016 14:21:28 +0000 (+0100) Subject: Fix valgrind issue when throwing due to yield from aborted generator X-Git-Tag: php-7.1.1RC1~163^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fcaccbaa22784084d2cb59821b4e66c230702851;p=php Fix valgrind issue when throwing due to yield from aborted generator --- diff --git a/Zend/zend_generators.c b/Zend/zend_generators.c index 6055e76e96..8dc9484eb0 100644 --- a/Zend/zend_generators.c +++ b/Zend/zend_generators.c @@ -519,6 +519,7 @@ ZEND_API zend_generator *zend_generator_update_current(zend_generator *generator generator->execute_fake.prev_execute_data = original_execute_data; } + root->execute_data->opline--; /* ZEND_YIELD(_FROM) already advance, so decrement opline to throw from correct place */ zend_throw_exception(zend_ce_ClosedGeneratorException, "Generator yielded from aborted, no return value available", 0); EG(current_execute_data) = original_execute_data;