summaryrefslogtreecommitdiff
path: root/Zend/zend_iterators.c
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2004-02-14 13:33:36 +0000
committerMarcus Boerger <helly@php.net>2004-02-14 13:33:36 +0000
commitce984d7667b47063d241da027e6a92dd2df36a84 (patch)
tree696d03cd9fc0f13ae0a5f22de22500a3b4cb8ec1 /Zend/zend_iterators.c
parentac9f4cc2afd741743473dc7e33532ad61483ee34 (diff)
downloadphp-git-ce984d7667b47063d241da027e6a92dd2df36a84.tar.gz
dtor's may not be called from free_storage handlers
Diffstat (limited to 'Zend/zend_iterators.c')
-rwxr-xr-xZend/zend_iterators.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_iterators.c b/Zend/zend_iterators.c
index c621bcb900..17d37da814 100755
--- a/Zend/zend_iterators.c
+++ b/Zend/zend_iterators.c
@@ -54,7 +54,7 @@ ZEND_API void zend_register_iterator_wrapper(TSRMLS_D)
zend_iterator_class_entry.name = "__iterator_wrapper";
}
-static void iter_wrapper_free_storage(zend_object *object TSRMLS_DC)
+static void iter_wrapper_dtor(void *object, zend_object_handle handle TSRMLS_DC)
{
zend_object_iterator *iter = (zend_object_iterator*)object;
iter->funcs->dtor(iter TSRMLS_CC);
@@ -66,7 +66,7 @@ ZEND_API zval *zend_iterator_wrap(zend_object_iterator *iter TSRMLS_DC)
MAKE_STD_ZVAL(wrapped);
Z_TYPE_P(wrapped) = IS_OBJECT;
- wrapped->value.obj.handle = zend_objects_store_put(iter, NULL, iter_wrapper_free_storage, NULL TSRMLS_CC);
+ wrapped->value.obj.handle = zend_objects_store_put(iter, iter_wrapper_dtor, NULL, NULL TSRMLS_CC);
wrapped->value.obj.handlers = &iterator_object_handlers;
return wrapped;