@@ -55,8 +55,8 @@ PHPAPI zend_class_entry *spl_ce_RecursiveArrayIterator;
55
55
#define SPL_ARRAY_CLONE_MASK 0x0100FFFF
56
56
57
57
#define SPL_ARRAY_METHOD_NO_ARG 0
58
- #define SPL_ARRAY_METHOD_USE_ARG 1
59
- #define SPL_ARRAY_METHOD_MAY_USER_ARG 2
58
+ #define SPL_ARRAY_METHOD_CALLBACK_ARG 1
59
+ #define SPL_ARRAY_METHOD_SORT_FLAGS_ARG 2
60
60
61
61
typedef struct _spl_array_object {
62
62
zval array ;
@@ -1429,15 +1429,14 @@ static void spl_array_method(INTERNAL_FUNCTION_PARAMETERS, char *fname, int fnam
1429
1429
intern -> nApplyCount ++ ;
1430
1430
call_user_function (EG (function_table ), NULL , & function_name , return_value , 1 , params );
1431
1431
intern -> nApplyCount -- ;
1432
- } else if (use_arg == SPL_ARRAY_METHOD_MAY_USER_ARG ) {
1433
- if (zend_parse_parameters (ZEND_NUM_ARGS (), "|z" , & arg ) == FAILURE ) {
1432
+ } else if (use_arg == SPL_ARRAY_METHOD_SORT_FLAGS_ARG ) {
1433
+ zend_long sort_flags = 0 ;
1434
+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "|l" , & sort_flags ) == FAILURE ) {
1434
1435
goto exit ;
1435
1436
}
1436
- if (arg ) {
1437
- ZVAL_COPY_VALUE (& params [1 ], arg );
1438
- }
1437
+ ZVAL_LONG (& params [1 ], sort_flags );
1439
1438
intern -> nApplyCount ++ ;
1440
- call_user_function (EG (function_table ), NULL , & function_name , return_value , arg ? 2 : 1 , params );
1439
+ call_user_function (EG (function_table ), NULL , & function_name , return_value , 2 , params );
1441
1440
intern -> nApplyCount -- ;
1442
1441
} else {
1443
1442
if (zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & arg ) == FAILURE ) {
@@ -1468,16 +1467,16 @@ PHP_METHOD(cname, fname) \
1468
1467
}
1469
1468
1470
1469
/* {{{ Sort the entries by values. */
1471
- SPL_ARRAY_METHOD (ArrayObject , asort , SPL_ARRAY_METHOD_MAY_USER_ARG ) /* }}} */
1470
+ SPL_ARRAY_METHOD (ArrayObject , asort , SPL_ARRAY_METHOD_SORT_FLAGS_ARG ) /* }}} */
1472
1471
1473
1472
/* {{{ Sort the entries by key. */
1474
- SPL_ARRAY_METHOD (ArrayObject , ksort , SPL_ARRAY_METHOD_MAY_USER_ARG ) /* }}} */
1473
+ SPL_ARRAY_METHOD (ArrayObject , ksort , SPL_ARRAY_METHOD_SORT_FLAGS_ARG ) /* }}} */
1475
1474
1476
1475
/* {{{ Sort the entries by values user defined function. */
1477
- SPL_ARRAY_METHOD (ArrayObject , uasort , SPL_ARRAY_METHOD_USE_ARG ) /* }}} */
1476
+ SPL_ARRAY_METHOD (ArrayObject , uasort , SPL_ARRAY_METHOD_CALLBACK_ARG ) /* }}} */
1478
1477
1479
1478
/* {{{ Sort the entries by key using user defined function. */
1480
- SPL_ARRAY_METHOD (ArrayObject , uksort , SPL_ARRAY_METHOD_USE_ARG ) /* }}} */
1479
+ SPL_ARRAY_METHOD (ArrayObject , uksort , SPL_ARRAY_METHOD_CALLBACK_ARG ) /* }}} */
1481
1480
1482
1481
/* {{{ Sort the entries by values using "natural order" algorithm. */
1483
1482
SPL_ARRAY_METHOD (ArrayObject , natsort , SPL_ARRAY_METHOD_NO_ARG ) /* }}} */
0 commit comments