mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
- 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)
This commit is contained in:
parent
5caddd66ba
commit
8140f095c6
3 changed files with 5 additions and 8 deletions
|
@ -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);
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue