From b30d8beebf70a92cc69a3a627d04f1aff62c1f78 Mon Sep 17 00:00:00 2001 From: Ilia Alshanetsky Date: Tue, 22 Mar 2005 01:45:17 +0000 Subject: [PATCH] Simplify argument checking code for array_combine(). --- ext/standard/array.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/ext/standard/array.c b/ext/standard/array.c index 1175b3303a..41b4b668c0 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -4366,17 +4366,16 @@ PHP_FUNCTION(array_combine) return; } - if (zend_hash_num_elements(Z_ARRVAL_P(keys)) == 0 || zend_hash_num_elements(Z_ARRVAL_P(values)) == 0) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Both parameters should have at least 1 element"); + if (zend_hash_num_elements(Z_ARRVAL_P(keys)) != zend_hash_num_elements(Z_ARRVAL_P(values))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Both parameters should have equal number of elements"); RETURN_FALSE; } - - if (zend_hash_num_elements(Z_ARRVAL_P(keys)) != zend_hash_num_elements(Z_ARRVAL_P(values))) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Both parameters should have equal number of elements"); + if (!zend_hash_num_elements(Z_ARRVAL_P(keys))) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Both parameters should have at least 1 element"); RETURN_FALSE; } - + array_init(return_value); zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(keys), &pos_keys); -- 2.50.1