|
|
|
@ -939,7 +939,7 @@ static int zend_parse_va_args(int num_args, char *type_spec, va_list *va, int fl |
|
|
|
return SUCCESS; |
|
|
|
} |
|
|
|
|
|
|
|
#define ENSURE_ZERO_ARGS(num_args, type_spec, quiet) { \ |
|
|
|
#define RETURN_IF_ZERO_ARGS(num_args, type_spec, quiet) { \ |
|
|
|
int __num_args = (num_args); \ |
|
|
|
if (0 == (type_spec)[0] && 0 != __num_args && !(quiet)) { \ |
|
|
|
char *__space; \ |
|
|
|
@ -956,7 +956,7 @@ ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *t |
|
|
|
va_list va; |
|
|
|
int retval; |
|
|
|
|
|
|
|
ENSURE_ZERO_ARGS(num_args, type_spec, flags & ZEND_PARSE_PARAMS_QUIET); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args, type_spec, flags & ZEND_PARSE_PARAMS_QUIET); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
retval = zend_parse_va_args(num_args, type_spec, &va, flags TSRMLS_CC); |
|
|
|
@ -970,7 +970,7 @@ ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...) |
|
|
|
va_list va; |
|
|
|
int retval; |
|
|
|
|
|
|
|
ENSURE_ZERO_ARGS(num_args, type_spec, 0); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args, type_spec, 0); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
retval = zend_parse_va_args(num_args, type_spec, &va, 0 TSRMLS_CC); |
|
|
|
@ -988,14 +988,14 @@ ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr |
|
|
|
zend_class_entry *ce; |
|
|
|
|
|
|
|
if (!this_ptr) { |
|
|
|
ENSURE_ZERO_ARGS(num_args, p, 0); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args, p, 0); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
retval = zend_parse_va_args(num_args, type_spec, &va, 0 TSRMLS_CC); |
|
|
|
va_end(va); |
|
|
|
} else { |
|
|
|
p++; |
|
|
|
ENSURE_ZERO_ARGS(num_args-1, p, 0); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args-1, p, 0); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
|
|
|
|
@ -1024,14 +1024,14 @@ ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC, |
|
|
|
int quiet = flags & ZEND_PARSE_PARAMS_QUIET; |
|
|
|
|
|
|
|
if (!this_ptr) { |
|
|
|
ENSURE_ZERO_ARGS(num_args, p, quiet); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args, p, quiet); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
retval = zend_parse_va_args(num_args, type_spec, &va, 0 TSRMLS_CC); |
|
|
|
va_end(va); |
|
|
|
} else { |
|
|
|
p++; |
|
|
|
ENSURE_ZERO_ARGS(num_args-1, p, quiet); |
|
|
|
RETURN_IF_ZERO_ARGS(num_args-1, p, quiet); |
|
|
|
|
|
|
|
va_start(va, type_spec); |
|
|
|
|
|
|
|
|