From df7293b07250360f9e9cb113bab54618d1a26881 Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Mon, 7 Apr 2014 12:14:44 +0400 Subject: don't use memset() for array of zval initialization --- Zend/zend_objects.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'Zend/zend_objects.c') diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c index bf985b12bc..35b237e132 100644 --- a/Zend/zend_objects.c +++ b/Zend/zend_objects.c @@ -33,8 +33,16 @@ ZEND_API void zend_object_std_init(zend_object *object, zend_class_entry *ce TSR object->ce = ce; object->properties = NULL; object->guards = NULL; - memset(object->properties_table, 0, sizeof(zval) * ce->default_properties_count); zend_objects_store_put(object); + if (EXPECTED(ce->default_properties_count != 0)) { + zval *p = object->properties_table; + zval *end = p + ce->default_properties_count; + + do { + ZVAL_UNDEF(p); + p++; + } while (p != end); + } } ZEND_API void zend_object_std_dtor(zend_object *object TSRMLS_DC) -- cgit v1.2.1