php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid comparison function."); \
BG(user_compare_fci) = old_user_compare_fci; \
BG(user_compare_fci_cache) = old_user_compare_fci_cache; \
- BG(user_compare_func_name) = old_compare_func; \
RETURN_FALSE; \
} \
*/
#define PHP_ARRAY_CMP_FUNC_VARS \
- zval **old_compare_func; \
zend_fcall_info old_user_compare_fci; \
zend_fcall_info_cache old_user_compare_fci_cache \
#define PHP_ARRAY_CMP_FUNC_BACKUP() \
- old_compare_func = BG(user_compare_func_name); \
old_user_compare_fci = BG(user_compare_fci); \
old_user_compare_fci_cache = BG(user_compare_fci_cache); \
BG(user_compare_fci_cache) = empty_fcall_info_cache; \
#define PHP_ARRAY_CMP_FUNC_RESTORE() \
BG(user_compare_fci) = old_user_compare_fci; \
BG(user_compare_fci_cache) = old_user_compare_fci_cache; \
- BG(user_compare_func_name) = old_compare_func; \
/* {{{ proto bool usort(array array_arg, mixed comparator) U
return_value->value.ht = ht;
}
- if ((behavior & INTERSECT_NORMAL) && data_compare_type == INTERSECT_COMP_DATA_USER) {
- /* array_uintersect() */
- BG(user_compare_func_name) = args[arr_argc];
- }
-
/* go through the lists and look for common values */
while (*ptrs[0]) {
if ((behavior & INTERSECT_ASSOC) /* triggered also when INTERSECT_KEY */
BG(strtok_string) = NULL;
BG(strtok_zval) = NULL;
BG(locale_string) = NULL;
- BG(user_compare_func_name) = NULL;
BG(array_walk_fci) = empty_fcall_info;
BG(array_walk_fci_cache) = empty_fcall_info_cache;
BG(user_compare_fci) = empty_fcall_info;
char str_ebuf[40];
zend_fcall_info array_walk_fci;
zend_fcall_info_cache array_walk_fci_cache;
- zval **user_compare_func_name;
zend_fcall_info user_compare_fci;
zend_fcall_info_cache user_compare_fci_cache;
zend_llist *user_tick_functions;