summaryrefslogtreecommitdiff
path: root/Zend/zend_objects.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2004-02-04 09:56:20 +0000
committerZeev Suraski <zeev@php.net>2004-02-04 09:56:20 +0000
commitf5f7d569a0dc42d4469f4091ecf7d71a7152efc4 (patch)
treeac12861e33048635195e15c600bc4f456ff9fa65 /Zend/zend_objects.c
parent24eb1f6eb26417bfbaa300fdcd639ab0b4e1cc0c (diff)
downloadphp-git-f5f7d569a0dc42d4469f4091ecf7d71a7152efc4.tar.gz
Change destructor implementation (details will follow on internals@)
Diffstat (limited to 'Zend/zend_objects.c')
-rw-r--r--Zend/zend_objects.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c
index 12cdc1c457..9b3311d62d 100644
--- a/Zend/zend_objects.c
+++ b/Zend/zend_objects.c
@@ -78,6 +78,10 @@ ZEND_API void zend_objects_destroy_object(zend_object *object, zend_object_handl
zend_call_method_with_0_params(&obj, object->ce, NULL, "__destruct", NULL);
}
+}
+
+ZEND_API void zend_objects_free_object_storage(zend_object *object TSRMLS_DC)
+{
zend_nuke_object(object TSRMLS_CC);
}
@@ -87,7 +91,7 @@ ZEND_API zend_object_value zend_objects_new(zend_object **object, zend_class_ent
*object = emalloc(sizeof(zend_object));
(*object)->ce = class_type;
- retval.handle = zend_objects_store_put(*object, (zend_objects_store_dtor_t) zend_objects_destroy_object, NULL TSRMLS_CC);
+ retval.handle = zend_objects_store_put(*object, (zend_objects_store_dtor_t) zend_objects_destroy_object, (zend_objects_free_object_storage_t) zend_objects_free_object_storage, NULL TSRMLS_CC);
retval.handlers = &std_object_handlers;
(*object)->in_get = 0;
(*object)->in_set = 0;