summaryrefslogtreecommitdiff
path: root/Zend
diff options
context:
space:
mode:
authorAndi Gutmans <andi@php.net>2005-02-24 02:35:59 +0000
committerAndi Gutmans <andi@php.net>2005-02-24 02:35:59 +0000
commit8140f095c68576561361c66c89c2d34a186ef18e (patch)
treeb419838e9e5bac007440e8a85d9413ce598a2616 /Zend
parent5caddd66bae1323652b83aca30e4696aa1f1c507 (diff)
downloadphp-git-8140f095c68576561361c66c89c2d34a186ef18e.tar.gz
- Revert following patch until we decide what is the right way to handle
- this: - Fix signatures they are all meant to be able to deal with any type in any object storage (though we are still missing several parts)
Diffstat (limited to 'Zend')
-rw-r--r--Zend/zend_objects.c7
-rw-r--r--Zend/zend_objects.h4
-rw-r--r--Zend/zend_objects_API.h2
3 files changed, 5 insertions, 8 deletions
diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c
index d5579108c9..30f6297c3d 100644
--- a/Zend/zend_objects.c
+++ b/Zend/zend_objects.c
@@ -26,9 +26,8 @@
#include "zend_interfaces.h"
-ZEND_API void zend_objects_destroy_object(void *_object, zend_object_handle handle TSRMLS_DC)
+ZEND_API void zend_objects_destroy_object(zend_object *object, zend_object_handle handle TSRMLS_DC)
{
- zend_object *object = (zend_object*)_object;
zend_function *destructor = object->ce->destructor;
if (destructor) {
@@ -87,10 +86,8 @@ ZEND_API void zend_objects_destroy_object(void *_object, zend_object_handle hand
}
}
-ZEND_API void zend_objects_free_object_storage(void *_object TSRMLS_DC)
+ZEND_API void zend_objects_free_object_storage(zend_object *object TSRMLS_DC)
{
- zend_object *object = (zend_object*)_object;
-
zend_hash_destroy(object->properties);
FREE_HASHTABLE(object->properties);
efree(object);
diff --git a/Zend/zend_objects.h b/Zend/zend_objects.h
index a9aaf71175..047d611d45 100644
--- a/Zend/zend_objects.h
+++ b/Zend/zend_objects.h
@@ -26,11 +26,11 @@
BEGIN_EXTERN_C()
ZEND_API zend_object_value zend_objects_new(zend_object **object, zend_class_entry *class_type TSRMLS_DC);
-ZEND_API void zend_objects_destroy_object(void *object, zend_object_handle handle TSRMLS_DC);
+ZEND_API void zend_objects_destroy_object(zend_object *object, zend_object_handle handle TSRMLS_DC);
ZEND_API zend_object *zend_objects_get_address(zval *object TSRMLS_DC);
ZEND_API void zend_objects_clone_members(zend_object *new_object, zend_object_value new_obj_val, zend_object *old_object, zend_object_handle handle TSRMLS_DC);
ZEND_API zend_object_value zend_objects_clone_obj(zval *object TSRMLS_DC);
-ZEND_API void zend_objects_free_object_storage(void *object TSRMLS_DC);
+ZEND_API void zend_objects_free_object_storage(zend_object *object TSRMLS_DC);
END_EXTERN_C()
#endif /* ZEND_OBJECTS_H */
diff --git a/Zend/zend_objects_API.h b/Zend/zend_objects_API.h
index b4c986ee1e..02701941f2 100644
--- a/Zend/zend_objects_API.h
+++ b/Zend/zend_objects_API.h
@@ -25,7 +25,7 @@
#include "zend.h"
typedef void (*zend_objects_store_dtor_t)(void *object, zend_object_handle handle TSRMLS_DC);
-typedef void (*zend_objects_free_object_storage_t)(void *object TSRMLS_DC);
+typedef void (*zend_objects_free_object_storage_t)(zend_object *object TSRMLS_DC);
typedef void (*zend_objects_store_clone_t)(void *object, void **object_clone TSRMLS_DC);