diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2006-10-03 17:41:47 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2006-10-03 17:41:47 +0000 |
commit | 8581c7328f1795e7b83ce8b09bfdffed49be6df8 (patch) | |
tree | 249a92a2ae22605a0783faf01ccd6bb46ed090eb /ext/standard/array.c | |
parent | 59fabbb464e799c0aa88e87b3f82b2d7ad96928c (diff) | |
download | php-git-8581c7328f1795e7b83ce8b09bfdffed49be6df8.tar.gz |
optimize zend_hash_init() with known hash table sizes.
Diffstat (limited to 'ext/standard/array.c')
-rw-r--r-- | ext/standard/array.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c index 13a6ff2c9c..05f234382e 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -3055,7 +3055,7 @@ static void php_array_intersect(INTERNAL_FUNCTION_PARAMETERS, int behavior, int zval *tmp; ALLOC_HASHTABLE(ht); - zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); + zend_hash_init(ht, zend_hash_num_elements(return_value->value.ht), NULL, ZVAL_PTR_DTOR, 0); zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); return_value->value.ht = ht; } @@ -3441,7 +3441,7 @@ static void php_array_diff(INTERNAL_FUNCTION_PARAMETERS, int behavior, int data_ zval *tmp; ALLOC_HASHTABLE(ht); - zend_hash_init(ht, 0, NULL, ZVAL_PTR_DTOR, 0); + zend_hash_init(ht, zend_hash_num_elements(return_value->value.ht), NULL, ZVAL_PTR_DTOR, 0); zend_hash_copy(ht, return_value->value.ht, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); return_value->value.ht = ht; } |