diff options
Diffstat (limited to 'Zend')
-rw-r--r-- | Zend/zend_object_handlers.c | 4 | ||||
-rw-r--r-- | Zend/zend_operators.c | 23 | ||||
-rw-r--r-- | Zend/zend_operators.h | 6 |
3 files changed, 12 insertions, 21 deletions
diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index a0f3bfc45b..644edfd61f 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -1286,8 +1286,6 @@ ZEND_API union _zend_function *zend_std_get_constructor(zend_object *zobj) /* {{ } /* }}} */ -int zend_compare_symbol_tables_i(HashTable *ht1, HashTable *ht2); - static int zend_std_compare_objects(zval *o1, zval *o2) /* {{{ */ { zend_object *zobj1, *zobj2; @@ -1343,7 +1341,7 @@ static int zend_std_compare_objects(zval *o1, zval *o2) /* {{{ */ if (!zobj2->properties) { rebuild_object_properties(zobj2); } - return zend_compare_symbol_tables_i(zobj1->properties, zobj2->properties); + return zend_compare_symbol_tables(zobj1->properties, zobj2->properties); } } /* }}} */ diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c index 9688e95414..17937ded9e 100644 --- a/Zend/zend_operators.c +++ b/Zend/zend_operators.c @@ -1791,7 +1791,7 @@ ZEND_API int compare_function(zval *result, zval *op1, zval *op2) /* {{{ */ return SUCCESS; case TYPE_PAIR(IS_ARRAY, IS_ARRAY): - zend_compare_arrays(result, op1, op2); + ZVAL_LONG(result, zend_compare_arrays(op1, op2)); return SUCCESS; case TYPE_PAIR(IS_NULL, IS_NULL): @@ -2601,35 +2601,28 @@ static int hash_zval_compare_function(zval *z1, zval *z2) /* {{{ */ } /* }}} */ -ZEND_API int zend_compare_symbol_tables_i(HashTable *ht1, HashTable *ht2) /* {{{ */ +ZEND_API int zend_compare_symbol_tables(HashTable *ht1, HashTable *ht2) /* {{{ */ { return ht1 == ht2 ? 0 : zend_hash_compare(ht1, ht2, (compare_func_t) hash_zval_compare_function, 0); } /* }}} */ -ZEND_API void zend_compare_symbol_tables(zval *result, HashTable *ht1, HashTable *ht2) /* {{{ */ +ZEND_API int zend_compare_arrays(zval *a1, zval *a2) /* {{{ */ { - ZVAL_LONG(result, ht1 == ht2 ? 0 : zend_hash_compare(ht1, ht2, (compare_func_t) hash_zval_compare_function, 0)); + return zend_compare_symbol_tables(Z_ARRVAL_P(a1), Z_ARRVAL_P(a2)); } /* }}} */ -ZEND_API void zend_compare_arrays(zval *result, zval *a1, zval *a2) /* {{{ */ -{ - zend_compare_symbol_tables(result, Z_ARRVAL_P(a1), Z_ARRVAL_P(a2)); -} -/* }}} */ - -ZEND_API void zend_compare_objects(zval *result, zval *o1, zval *o2) /* {{{ */ +ZEND_API int zend_compare_objects(zval *o1, zval *o2) /* {{{ */ { if (Z_OBJ_P(o1) == Z_OBJ_P(o2)) { - ZVAL_LONG(result, 0); - return; + return 0; } if (Z_OBJ_HT_P(o1)->compare_objects == NULL) { - ZVAL_LONG(result, 1); + return 1; } else { - ZVAL_LONG(result, Z_OBJ_HT_P(o1)->compare_objects(o1, o2)); + return Z_OBJ_HT_P(o1)->compare_objects(o1, o2); } } /* }}} */ diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index 57120228fb..5a20ac72a7 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -338,9 +338,9 @@ ZEND_API int zend_binary_strcasecmp_l(const char *s1, size_t len1, const char *s ZEND_API int zend_binary_strncasecmp_l(const char *s1, size_t len1, const char *s2, size_t len2, size_t length); ZEND_API zend_long zendi_smart_strcmp(zval *s1, zval *s2); -ZEND_API void zend_compare_symbol_tables(zval *result, HashTable *ht1, HashTable *ht2); -ZEND_API void zend_compare_arrays(zval *result, zval *a1, zval *a2); -ZEND_API void zend_compare_objects(zval *result, zval *o1, zval *o2); +ZEND_API int zend_compare_symbol_tables(HashTable *ht1, HashTable *ht2); +ZEND_API int zend_compare_arrays(zval *a1, zval *a2); +ZEND_API int zend_compare_objects(zval *o1, zval *o2); ZEND_API int zend_atoi(const char *str, int str_len); ZEND_API zend_long zend_atol(const char *str, int str_len); |