{
php_timezone_obj *intern;
zend_object_value retval;
+ zval *tmp;
intern = emalloc(sizeof(php_timezone_obj));
memset(intern, 0, sizeof(php_timezone_obj));
intern->std.ce = class_type;
+ ALLOC_HASHTABLE(intern->std.properties);
+ zend_hash_init(intern->std.properties, 0, NULL, ZVAL_PTR_DTOR, 0);
+ zend_hash_copy(intern->std.properties, &class_type->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *));
+
retval.handle = zend_objects_store_put(intern, (zend_objects_store_dtor_t)zend_objects_destroy_object, (zend_objects_free_object_storage_t) date_object_free_storage_timezone, NULL TSRMLS_CC);
retval.handlers = &date_object_handlers_timezone;
static void date_object_free_storage_timezone(void *object TSRMLS_DC)
{
+ php_date_obj *intern = (php_date_obj *)object;
+
+ if (intern->std.properties) {
+ zend_hash_destroy(intern->std.properties);
+ efree(intern->std.properties);
+ intern->std.properties = NULL;
+ }
+
efree(object);
}