summaryrefslogtreecommitdiff
path: root/ext/sqlite
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2010-05-24 14:11:39 +0000
committerDmitry Stogov <dmitry@php.net>2010-05-24 14:11:39 +0000
commitc5237d82bf01a762bb38f80def59b9c16cb84dc1 (patch)
tree6e769820ba97ef669765c6ecfeabb08faf9e6ebc /ext/sqlite
parent1cabc8cd3a3bf5c12a8ece9efb59e3f5381f1ae5 (diff)
downloadphp-git-c5237d82bf01a762bb38f80def59b9c16cb84dc1.tar.gz
Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties
Diffstat (limited to 'ext/sqlite')
-rw-r--r--ext/sqlite/sqlite.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/ext/sqlite/sqlite.c b/ext/sqlite/sqlite.c
index db0dab40ba..1f33caf43b 100644
--- a/ext/sqlite/sqlite.c
+++ b/ext/sqlite/sqlite.c
@@ -1154,14 +1154,13 @@ static void sqlite_object_free_storage(void *object TSRMLS_DC)
static void sqlite_object_new(zend_class_entry *class_type, zend_object_handlers *handlers, zend_object_value *retval TSRMLS_DC)
{
sqlite_object *intern;
- zval *tmp;
intern = emalloc(sizeof(sqlite_object));
memset(intern, 0, sizeof(sqlite_object));
zend_object_std_init(&intern->std, class_type TSRMLS_CC);
- zend_hash_copy(intern->std.properties, &class_type->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *));
-
+ object_properties_init(&intern->std, class_type);
+
retval->handle = zend_objects_store_put(intern, (zend_objects_store_dtor_t)zend_objects_destroy_object, (zend_objects_free_object_storage_t) sqlite_object_free_storage, NULL TSRMLS_CC);
retval->handlers = handlers;
}