]> granicus.if.org Git - php/commitdiff
Remove generator iterator member
authorNikita Popov <nikita.ppv@gmail.com>
Tue, 30 Jun 2020 16:26:29 +0000 (18:26 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Tue, 30 Jun 2020 16:26:29 +0000 (18:26 +0200)
This is probably a leftover from the PHP 5 implementation, where
the iterator was embedded directly in the generator.

Zend/zend_generators.c
Zend/zend_generators.h

index 19a5e0665f73e457ece32ba624fbf1bd3f907459..b8730d282013d7be36b56245bb7f1ddb4c4e521e 100644 (file)
@@ -1023,8 +1023,6 @@ ZEND_METHOD(Generator, getReturn)
 
 static void zend_generator_iterator_dtor(zend_object_iterator *iterator) /* {{{ */
 {
-       zend_generator *generator = (zend_generator*)Z_OBJ(iterator->data);
-       generator->iterator = NULL;
        zval_ptr_dtor(&iterator->data);
 }
 /* }}} */
@@ -1114,8 +1112,7 @@ zend_object_iterator *zend_generator_get_iterator(zend_class_entry *ce, zval *ob
                return NULL;
        }
 
-       iterator = generator->iterator = emalloc(sizeof(zend_object_iterator));
-
+       iterator = emalloc(sizeof(zend_object_iterator));
        zend_iterator_init(iterator);
 
        iterator->funcs = &zend_generator_iterator_functions;
index 3a3d567508dd8ceb345908010922ca9affd2a15c..036b47732bab7b31c58a30d010ab087a2fc59703 100644 (file)
@@ -55,8 +55,6 @@ struct _zend_generator_node {
 struct _zend_generator {
        zend_object std;
 
-       zend_object_iterator *iterator;
-
        /* The suspended execution context. */
        zend_execute_data *execute_data;