From 271bc689ea9211821363e289accb23bb965aa5eb Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Wed, 1 Jul 2020 12:03:13 +0200 Subject: Add iterator get_gc function for generators Closes GH-5787. --- Zend/zend_generators.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'Zend/zend_generators.c') diff --git a/Zend/zend_generators.c b/Zend/zend_generators.c index b1abbd7f9b..fe7066c0c8 100644 --- a/Zend/zend_generators.c +++ b/Zend/zend_generators.c @@ -1087,6 +1087,14 @@ static void zend_generator_iterator_rewind(zend_object_iterator *iterator) /* {{ } /* }}} */ +static HashTable *zend_generator_iterator_get_gc( + zend_object_iterator *iterator, zval **table, int *n) +{ + *table = &iterator->data; + *n = 1; + return NULL; +} + static const zend_object_iterator_funcs zend_generator_iterator_functions = { zend_generator_iterator_dtor, zend_generator_iterator_valid, @@ -1095,7 +1103,7 @@ static const zend_object_iterator_funcs zend_generator_iterator_functions = { zend_generator_iterator_move_forward, zend_generator_iterator_rewind, NULL, - NULL, /* get_gc */ + zend_generator_iterator_get_gc, }; zend_object_iterator *zend_generator_get_iterator(zend_class_entry *ce, zval *object, int by_ref) /* {{{ */ -- cgit v1.2.1