diff options
Diffstat (limited to 'Zend/zend_iterators.c')
-rw-r--r-- | Zend/zend_iterators.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/Zend/zend_iterators.c b/Zend/zend_iterators.c index 7610aadfc8..5514c8bba8 100644 --- a/Zend/zend_iterators.c +++ b/Zend/zend_iterators.c @@ -65,11 +65,10 @@ static void iter_wrapper_dtor(zend_object *object TSRMLS_DC) iter->funcs->dtor(iter TSRMLS_CC); } -ZEND_API void zend_iterator_wrap(zend_object_iterator *iter, zval *wrapped TSRMLS_DC) +ZEND_API void zend_iterator_init(zend_object_iterator *iter TSRMLS_DC) { - ZVAL_OBJ(wrapped, &iter->std); - //??? hack (it would be better implement it in anothe way) - Z_OBJ_HT_P(wrapped) = &iterator_object_handlers; + zend_object_std_init(&iter->std, &zend_iterator_class_entry); + iter->std.handlers = &iterator_object_handlers; } ZEND_API enum zend_object_iterator_kind zend_iterator_unwrap( |