mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
Remove no_separation flag
This commit is contained in:
parent
e93aca7167
commit
302933daea
27 changed files with 10 additions and 50 deletions
|
@ -19,6 +19,7 @@ PHP 8.0 INTERNALS UPGRADE NOTES
|
||||||
p. ARG_COUNT() macro removed
|
p. ARG_COUNT() macro removed
|
||||||
q. GC_COLLECTABLE flag
|
q. GC_COLLECTABLE flag
|
||||||
r. Cannot implement Traversable only
|
r. Cannot implement Traversable only
|
||||||
|
s. zend_fcall_info no_separation flag removed
|
||||||
|
|
||||||
2. Build system changes
|
2. Build system changes
|
||||||
a. Abstract
|
a. Abstract
|
||||||
|
@ -135,6 +136,11 @@ PHP 8.0 INTERNALS UPGRADE NOTES
|
||||||
zend_create_internal_iterator_zval(return_value, ZEND_THIS);
|
zend_create_internal_iterator_zval(return_value, ZEND_THIS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s. The zend_fcall_info no_separation flag has been removed, and separation is
|
||||||
|
never allowed. If you wish to pass (or allow passing) arguments by
|
||||||
|
reference, explicitly create those arguments as references using
|
||||||
|
ZEND_MAKE_REF.
|
||||||
|
|
||||||
========================
|
========================
|
||||||
2. Build system changes
|
2. Build system changes
|
||||||
========================
|
========================
|
||||||
|
|
|
@ -3342,7 +3342,6 @@ ZEND_API int zend_fcall_info_init(zval *callable, uint32_t check_flags, zend_fca
|
||||||
fci->retval = NULL;
|
fci->retval = NULL;
|
||||||
fci->param_count = 0;
|
fci->param_count = 0;
|
||||||
fci->params = NULL;
|
fci->params = NULL;
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,7 +46,6 @@ typedef struct _zend_fcall_info {
|
||||||
zval *retval;
|
zval *retval;
|
||||||
zval *params;
|
zval *params;
|
||||||
zend_object *object;
|
zend_object *object;
|
||||||
zend_bool no_separation;
|
|
||||||
uint32_t param_count;
|
uint32_t param_count;
|
||||||
} zend_fcall_info;
|
} zend_fcall_info;
|
||||||
|
|
||||||
|
@ -498,12 +497,10 @@ ZEND_API int add_property_zval_ex(zval *arg, const char *key, size_t key_len, zv
|
||||||
#define add_property_zval(__arg, __key, __value) add_property_zval_ex(__arg, __key, strlen(__key), __value)
|
#define add_property_zval(__arg, __key, __value) add_property_zval_ex(__arg, __key, strlen(__key), __value)
|
||||||
|
|
||||||
|
|
||||||
ZEND_API int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr, uint32_t param_count, zval params[], int no_separation);
|
ZEND_API int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr, uint32_t param_count, zval params[]);
|
||||||
|
|
||||||
#define call_user_function(_unused, object, function_name, retval_ptr, param_count, params) \
|
#define call_user_function(_unused, object, function_name, retval_ptr, param_count, params) \
|
||||||
_call_user_function_ex(object, function_name, retval_ptr, param_count, params, 1)
|
_call_user_function_ex(object, function_name, retval_ptr, param_count, params)
|
||||||
#define call_user_function_ex(_unused, object, function_name, retval_ptr, param_count, params, no_separation, _unused2) \
|
|
||||||
_call_user_function_ex(object, function_name, retval_ptr, param_count, params, no_separation)
|
|
||||||
|
|
||||||
ZEND_API extern const zend_fcall_info empty_fcall_info;
|
ZEND_API extern const zend_fcall_info empty_fcall_info;
|
||||||
ZEND_API extern const zend_fcall_info_cache empty_fcall_info_cache;
|
ZEND_API extern const zend_fcall_info_cache empty_fcall_info_cache;
|
||||||
|
|
|
@ -167,7 +167,6 @@ ZEND_METHOD(Closure, call)
|
||||||
fci.size = sizeof(fci);
|
fci.size = sizeof(fci);
|
||||||
ZVAL_OBJ(&fci.function_name, &closure->std);
|
ZVAL_OBJ(&fci.function_name, &closure->std);
|
||||||
fci.retval = &closure_result;
|
fci.retval = &closure_result;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (zend_call_function(&fci, &fci_cache) == SUCCESS && Z_TYPE(closure_result) != IS_UNDEF) {
|
if (zend_call_function(&fci, &fci_cache) == SUCCESS && Z_TYPE(closure_result) != IS_UNDEF) {
|
||||||
if (Z_ISREF(closure_result)) {
|
if (Z_ISREF(closure_result)) {
|
||||||
|
|
|
@ -659,7 +659,6 @@ ZEND_METHOD(Exception, __toString)
|
||||||
fci.retval = &trace;
|
fci.retval = &trace;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
zend_call_function(&fci, NULL);
|
zend_call_function(&fci, NULL);
|
||||||
|
|
||||||
|
|
|
@ -619,7 +619,7 @@ ZEND_API int zval_update_constant(zval *pp) /* {{{ */
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr, uint32_t param_count, zval params[], int no_separation) /* {{{ */
|
int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr, uint32_t param_count, zval params[]) /* {{{ */
|
||||||
{
|
{
|
||||||
zend_fcall_info fci;
|
zend_fcall_info fci;
|
||||||
|
|
||||||
|
@ -629,7 +629,6 @@ int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr,
|
||||||
fci.retval = retval_ptr;
|
fci.retval = retval_ptr;
|
||||||
fci.param_count = param_count;
|
fci.param_count = param_count;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = (zend_bool) no_separation;
|
|
||||||
|
|
||||||
return zend_call_function(&fci, NULL);
|
return zend_call_function(&fci, NULL);
|
||||||
}
|
}
|
||||||
|
@ -737,10 +736,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache) /
|
||||||
|
|
||||||
if (ARG_SHOULD_BE_SENT_BY_REF(func, i + 1)) {
|
if (ARG_SHOULD_BE_SENT_BY_REF(func, i + 1)) {
|
||||||
if (UNEXPECTED(!Z_ISREF_P(arg))) {
|
if (UNEXPECTED(!Z_ISREF_P(arg))) {
|
||||||
if (!fci->no_separation) {
|
if (!ARG_MAY_BE_SENT_BY_REF(func, i + 1)) {
|
||||||
/* Separation is enabled -- create a ref */
|
|
||||||
ZVAL_NEW_REF(arg, arg);
|
|
||||||
} else if (!ARG_MAY_BE_SENT_BY_REF(func, i + 1)) {
|
|
||||||
/* By-value send is not allowed -- emit a warning,
|
/* By-value send is not allowed -- emit a warning,
|
||||||
* but still perform the call with a by-value send. */
|
* but still perform the call with a by-value send. */
|
||||||
zend_param_must_be_ref(func, i + 1);
|
zend_param_must_be_ref(func, i + 1);
|
||||||
|
@ -866,7 +862,6 @@ ZEND_API void zend_call_known_function(
|
||||||
fci.retval = retval_ptr ? retval_ptr : &retval;
|
fci.retval = retval_ptr ? retval_ptr : &retval;
|
||||||
fci.param_count = param_count;
|
fci.param_count = param_count;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
ZVAL_UNDEF(&fci.function_name); /* Unused */
|
ZVAL_UNDEF(&fci.function_name); /* Unused */
|
||||||
|
|
||||||
fcic.function_handler = fn;
|
fcic.function_handler = fn;
|
||||||
|
|
|
@ -1385,7 +1385,6 @@ static size_t curl_write(char *data, size_t size, size_t nmemb, void *ctx)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 2;
|
fci.param_count = 2;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ch->in_callback = 1;
|
ch->in_callback = 1;
|
||||||
error = zend_call_function(&fci, &t->fci_cache);
|
error = zend_call_function(&fci, &t->fci_cache);
|
||||||
|
@ -1432,7 +1431,6 @@ static int curl_fnmatch(void *ctx, const char *pattern, const char *string)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 3;
|
fci.param_count = 3;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ch->in_callback = 1;
|
ch->in_callback = 1;
|
||||||
error = zend_call_function(&fci, &t->fci_cache);
|
error = zend_call_function(&fci, &t->fci_cache);
|
||||||
|
@ -1485,7 +1483,6 @@ static size_t curl_progress(void *clientp, double dltotal, double dlnow, double
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 5;
|
fci.param_count = 5;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ch->in_callback = 1;
|
ch->in_callback = 1;
|
||||||
error = zend_call_function(&fci, &t->fci_cache);
|
error = zend_call_function(&fci, &t->fci_cache);
|
||||||
|
@ -1541,7 +1538,6 @@ static size_t curl_read(char *data, size_t size, size_t nmemb, void *ctx)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 3;
|
fci.param_count = 3;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ch->in_callback = 1;
|
ch->in_callback = 1;
|
||||||
error = zend_call_function(&fci, &t->fci_cache);
|
error = zend_call_function(&fci, &t->fci_cache);
|
||||||
|
@ -1603,7 +1599,6 @@ static size_t curl_write_header(char *data, size_t size, size_t nmemb, void *ctx
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 2;
|
fci.param_count = 2;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ch->in_callback = 1;
|
ch->in_callback = 1;
|
||||||
error = zend_call_function(&fci, &t->fci_cache);
|
error = zend_call_function(&fci, &t->fci_cache);
|
||||||
|
|
|
@ -151,7 +151,6 @@ static void dom_xpath_ext_function_php(xmlXPathParserContextPtr ctxt, int nargs,
|
||||||
|
|
||||||
fci.object = NULL;
|
fci.object = NULL;
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (!zend_make_callable(&fci.function_name, &callable)) {
|
if (!zend_make_callable(&fci.function_name, &callable)) {
|
||||||
php_error_docref(NULL, E_WARNING, "Unable to call handler %s()", ZSTR_VAL(callable));
|
php_error_docref(NULL, E_WARNING, "Unable to call handler %s()", ZSTR_VAL(callable));
|
||||||
|
|
|
@ -857,7 +857,6 @@ static void zend_ffi_callback_trampoline(ffi_cif* cif, void* ret, void** args, v
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.params = do_alloca(sizeof(zval) *callback_data->arg_count, use_heap);
|
fci.params = do_alloca(sizeof(zval) *callback_data->arg_count, use_heap);
|
||||||
fci.object = NULL;
|
fci.object = NULL;
|
||||||
fci.no_separation = 1;
|
|
||||||
fci.param_count = callback_data->arg_count;
|
fci.param_count = callback_data->arg_count;
|
||||||
|
|
||||||
if (callback_data->type->func.args) {
|
if (callback_data->type->func.args) {
|
||||||
|
|
|
@ -229,7 +229,6 @@ static void php_converter_to_u_callback(const void *context,
|
||||||
objval->to_cb.param_count = 4;
|
objval->to_cb.param_count = 4;
|
||||||
objval->to_cb.params = zargs;
|
objval->to_cb.params = zargs;
|
||||||
objval->to_cb.retval = &retval;
|
objval->to_cb.retval = &retval;
|
||||||
objval->to_cb.no_separation = 1;
|
|
||||||
if (zend_call_function(&(objval->to_cb), &(objval->to_cache)) == FAILURE) {
|
if (zend_call_function(&(objval->to_cb), &(objval->to_cache)) == FAILURE) {
|
||||||
/* Unlikely */
|
/* Unlikely */
|
||||||
php_converter_throw_failure(objval, U_INTERNAL_PROGRAM_ERROR, "Unexpected failure calling toUCallback()");
|
php_converter_throw_failure(objval, U_INTERNAL_PROGRAM_ERROR, "Unexpected failure calling toUCallback()");
|
||||||
|
@ -312,7 +311,6 @@ static void php_converter_from_u_callback(const void *context,
|
||||||
objval->from_cb.param_count = 4;
|
objval->from_cb.param_count = 4;
|
||||||
objval->from_cb.params = zargs;
|
objval->from_cb.params = zargs;
|
||||||
objval->from_cb.retval = &retval;
|
objval->from_cb.retval = &retval;
|
||||||
objval->from_cb.no_separation = 1;
|
|
||||||
if (zend_call_function(&(objval->from_cb), &(objval->from_cache)) == FAILURE) {
|
if (zend_call_function(&(objval->from_cb), &(objval->from_cache)) == FAILURE) {
|
||||||
/* Unlikely */
|
/* Unlikely */
|
||||||
php_converter_throw_failure(objval, U_INTERNAL_PROGRAM_ERROR, "Unexpected failure calling fromUCallback()");
|
php_converter_throw_failure(objval, U_INTERNAL_PROGRAM_ERROR, "Unexpected failure calling fromUCallback()");
|
||||||
|
|
|
@ -566,7 +566,6 @@ static xmlParserInputPtr _php_libxml_external_entity_loader(const char *URL,
|
||||||
fci->retval = &retval;
|
fci->retval = &retval;
|
||||||
fci->params = params;
|
fci->params = params;
|
||||||
fci->param_count = sizeof(params)/sizeof(*params);
|
fci->param_count = sizeof(params)/sizeof(*params);
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
status = zend_call_function(fci, &LIBXML(entity_loader).fcc);
|
status = zend_call_function(fci, &LIBXML(entity_loader).fcc);
|
||||||
if (status != SUCCESS || Z_ISUNDEF(retval)) {
|
if (status != SUCCESS || Z_ISUNDEF(retval)) {
|
||||||
|
|
|
@ -1227,7 +1227,6 @@ void php_mysqli_fetch_into_hash(INTERNAL_FUNCTION_PARAMETERS, int override_flags
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
|
if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
|
||||||
if (zend_fcall_info_args(&fci, ctor_params) == FAILURE) {
|
if (zend_fcall_info_args(&fci, ctor_params) == FAILURE) {
|
||||||
|
|
|
@ -1529,7 +1529,6 @@ static zend_string *preg_do_repl_func(zend_fcall_info *fci, zend_fcall_info_cach
|
||||||
fci->retval = &retval;
|
fci->retval = &retval;
|
||||||
fci->param_count = 1;
|
fci->param_count = 1;
|
||||||
fci->params = &arg;
|
fci->params = &arg;
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
if (zend_call_function(fci, fcc) == SUCCESS && Z_TYPE(retval) != IS_UNDEF) {
|
if (zend_call_function(fci, fcc) == SUCCESS && Z_TYPE(retval) != IS_UNDEF) {
|
||||||
if (EXPECTED(Z_TYPE(retval) == IS_STRING)) {
|
if (EXPECTED(Z_TYPE(retval) == IS_STRING)) {
|
||||||
|
|
|
@ -437,7 +437,6 @@ static void pdo_stmt_construct(zend_execute_data *execute_data, pdo_stmt_t *stmt
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
zend_fcall_info_args(&fci, ctor_args);
|
zend_fcall_info_args(&fci, ctor_args);
|
||||||
|
|
||||||
|
|
|
@ -655,7 +655,6 @@ static int do_fetch_class_prepare(pdo_stmt_t *stmt) /* {{{ */
|
||||||
fci->retval = &stmt->fetch.cls.retval;
|
fci->retval = &stmt->fetch.cls.retval;
|
||||||
fci->param_count = 0;
|
fci->param_count = 0;
|
||||||
fci->params = NULL;
|
fci->params = NULL;
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
zend_fcall_info_args_ex(fci, ce->constructor, &stmt->fetch.cls.ctor_args);
|
zend_fcall_info_args_ex(fci, ce->constructor, &stmt->fetch.cls.ctor_args);
|
||||||
|
|
||||||
|
|
|
@ -2584,7 +2584,6 @@ static void php_pgsql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, zend_long result_
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
|
if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
|
||||||
if (zend_fcall_info_args(&fci, ctor_params) == FAILURE) {
|
if (zend_fcall_info_args(&fci, ctor_params) == FAILURE) {
|
||||||
|
|
|
@ -1816,7 +1816,6 @@ ZEND_METHOD(ReflectionFunction, invoke)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = num_args;
|
fci.param_count = num_args;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
fcc.function_handler = fptr;
|
fcc.function_handler = fptr;
|
||||||
fcc.called_scope = NULL;
|
fcc.called_scope = NULL;
|
||||||
|
@ -1878,7 +1877,6 @@ ZEND_METHOD(ReflectionFunction, invokeArgs)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = argc;
|
fci.param_count = argc;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
fcc.function_handler = fptr;
|
fcc.function_handler = fptr;
|
||||||
fcc.called_scope = NULL;
|
fcc.called_scope = NULL;
|
||||||
|
@ -3206,7 +3204,6 @@ static void reflection_method_invoke(INTERNAL_FUNCTION_PARAMETERS, int variadic)
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = argc;
|
fci.param_count = argc;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
fcc.function_handler = mptr;
|
fcc.function_handler = mptr;
|
||||||
fcc.called_scope = intern->ce;
|
fcc.called_scope = intern->ce;
|
||||||
|
|
|
@ -654,7 +654,6 @@ PHP_METHOD(SoapFault, __toString)
|
||||||
fci.retval = &trace;
|
fci.retval = &trace;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
zend_call_function(&fci, NULL);
|
zend_call_function(&fci, NULL);
|
||||||
|
|
||||||
|
|
|
@ -1904,7 +1904,6 @@ static int spl_filesystem_file_call(spl_filesystem_object *intern, zend_function
|
||||||
fci.retval = return_value;
|
fci.retval = return_value;
|
||||||
fci.param_count = num_args;
|
fci.param_count = num_args;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
ZVAL_STR(&fci.function_name, func_ptr->common.function_name);
|
ZVAL_STR(&fci.function_name, func_ptr->common.function_name);
|
||||||
|
|
||||||
fcic.function_handler = func_ptr;
|
fcic.function_handler = func_ptr;
|
||||||
|
|
|
@ -63,7 +63,6 @@ static inline void spl_instantiate_arg_n(zend_class_entry *pce, zval *retval, in
|
||||||
fci.retval = &dummy;
|
fci.retval = &dummy;
|
||||||
fci.param_count = argc;
|
fci.param_count = argc;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
fcc.function_handler = func;
|
fcc.function_handler = func;
|
||||||
fcc.called_scope = pce;
|
fcc.called_scope = pce;
|
||||||
|
|
|
@ -1785,7 +1785,6 @@ PHP_METHOD(CallbackFilterIterator, accept)
|
||||||
fci->retval = return_value;
|
fci->retval = return_value;
|
||||||
fci->param_count = 3;
|
fci->param_count = 3;
|
||||||
fci->params = params;
|
fci->params = params;
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
if (zend_call_function(fci, fcc) != SUCCESS || Z_ISUNDEF_P(return_value)) {
|
if (zend_call_function(fci, fcc) != SUCCESS || Z_ISUNDEF_P(return_value)) {
|
||||||
RETURN_FALSE;
|
RETURN_FALSE;
|
||||||
|
|
|
@ -2146,7 +2146,6 @@ static int php_sqlite3_authorizer(void *autharg, int action, const char *arg1, c
|
||||||
fci->retval = &retval;
|
fci->retval = &retval;
|
||||||
fci->param_count = 5;
|
fci->param_count = 5;
|
||||||
fci->params = argv;
|
fci->params = argv;
|
||||||
fci->no_separation = 1;
|
|
||||||
|
|
||||||
int authreturn = SQLITE_DENY;
|
int authreturn = SQLITE_DENY;
|
||||||
|
|
||||||
|
|
|
@ -921,7 +921,6 @@ static inline int php_array_user_compare_unstable(Bucket *f, Bucket *s) /* {{{ *
|
||||||
BG(user_compare_fci).param_count = 2;
|
BG(user_compare_fci).param_count = 2;
|
||||||
BG(user_compare_fci).params = args;
|
BG(user_compare_fci).params = args;
|
||||||
BG(user_compare_fci).retval = &retval;
|
BG(user_compare_fci).retval = &retval;
|
||||||
BG(user_compare_fci).no_separation = 1;
|
|
||||||
call_failed = zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == FAILURE || Z_TYPE(retval) == IS_UNDEF;
|
call_failed = zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == FAILURE || Z_TYPE(retval) == IS_UNDEF;
|
||||||
zval_ptr_dtor(&args[1]);
|
zval_ptr_dtor(&args[1]);
|
||||||
zval_ptr_dtor(&args[0]);
|
zval_ptr_dtor(&args[0]);
|
||||||
|
@ -1063,7 +1062,6 @@ static inline int php_array_user_key_compare_unstable(Bucket *f, Bucket *s) /* {
|
||||||
BG(user_compare_fci).param_count = 2;
|
BG(user_compare_fci).param_count = 2;
|
||||||
BG(user_compare_fci).params = args;
|
BG(user_compare_fci).params = args;
|
||||||
BG(user_compare_fci).retval = &retval;
|
BG(user_compare_fci).retval = &retval;
|
||||||
BG(user_compare_fci).no_separation = 1;
|
|
||||||
call_failed = zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == FAILURE || Z_TYPE(retval) == IS_UNDEF;
|
call_failed = zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == FAILURE || Z_TYPE(retval) == IS_UNDEF;
|
||||||
zval_ptr_dtor(&args[1]);
|
zval_ptr_dtor(&args[1]);
|
||||||
zval_ptr_dtor(&args[0]);
|
zval_ptr_dtor(&args[0]);
|
||||||
|
@ -1374,7 +1372,6 @@ static int php_array_walk(zval *array, zval *userdata, int recursive) /* {{{ */
|
||||||
BG(array_walk_fci).retval = &retval;
|
BG(array_walk_fci).retval = &retval;
|
||||||
BG(array_walk_fci).param_count = userdata ? 3 : 2;
|
BG(array_walk_fci).param_count = userdata ? 3 : 2;
|
||||||
BG(array_walk_fci).params = args;
|
BG(array_walk_fci).params = args;
|
||||||
BG(array_walk_fci).no_separation = 1;
|
|
||||||
|
|
||||||
zend_hash_internal_pointer_reset_ex(target_hash, &pos);
|
zend_hash_internal_pointer_reset_ex(target_hash, &pos);
|
||||||
ht_iter = zend_hash_iterator_add(target_hash, pos);
|
ht_iter = zend_hash_iterator_add(target_hash, pos);
|
||||||
|
@ -4546,7 +4543,6 @@ static int zval_user_compare(zval *a, zval *b) /* {{{ */
|
||||||
BG(user_compare_fci).param_count = 2;
|
BG(user_compare_fci).param_count = 2;
|
||||||
BG(user_compare_fci).params = args;
|
BG(user_compare_fci).params = args;
|
||||||
BG(user_compare_fci).retval = &retval;
|
BG(user_compare_fci).retval = &retval;
|
||||||
BG(user_compare_fci).no_separation = 1;
|
|
||||||
|
|
||||||
if (zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == SUCCESS && Z_TYPE(retval) != IS_UNDEF) {
|
if (zend_call_function(&BG(user_compare_fci), &BG(user_compare_fci_cache)) == SUCCESS && Z_TYPE(retval) != IS_UNDEF) {
|
||||||
zend_long ret = zval_get_long(&retval);
|
zend_long ret = zval_get_long(&retval);
|
||||||
|
@ -5906,7 +5902,6 @@ PHP_FUNCTION(array_reduce)
|
||||||
|
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 2;
|
fci.param_count = 2;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ZEND_HASH_FOREACH_VAL(htbl, operand) {
|
ZEND_HASH_FOREACH_VAL(htbl, operand) {
|
||||||
ZVAL_COPY_VALUE(&args[0], return_value);
|
ZVAL_COPY_VALUE(&args[0], return_value);
|
||||||
|
@ -5959,7 +5954,6 @@ PHP_FUNCTION(array_filter)
|
||||||
|
|
||||||
if (ZEND_FCI_INITIALIZED(fci)) {
|
if (ZEND_FCI_INITIALIZED(fci)) {
|
||||||
have_callback = 1;
|
have_callback = 1;
|
||||||
fci.no_separation = 1;
|
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
if (use_type == ARRAY_FILTER_USE_BOTH) {
|
if (use_type == ARRAY_FILTER_USE_BOTH) {
|
||||||
fci.param_count = 2;
|
fci.param_count = 2;
|
||||||
|
@ -6062,7 +6056,6 @@ PHP_FUNCTION(array_map)
|
||||||
fci.retval = &result;
|
fci.retval = &result;
|
||||||
fci.param_count = 1;
|
fci.param_count = 1;
|
||||||
fci.params = &arg;
|
fci.params = &arg;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
ZVAL_COPY(&arg, zv);
|
ZVAL_COPY(&arg, zv);
|
||||||
ret = zend_call_function(&fci, &fci_cache);
|
ret = zend_call_function(&fci, &fci_cache);
|
||||||
|
@ -6151,7 +6144,6 @@ PHP_FUNCTION(array_map)
|
||||||
fci.retval = &result;
|
fci.retval = &result;
|
||||||
fci.param_count = n_arrays;
|
fci.param_count = n_arrays;
|
||||||
fci.params = params;
|
fci.params = params;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (zend_call_function(&fci, &fci_cache) != SUCCESS || Z_TYPE(result) == IS_UNDEF) {
|
if (zend_call_function(&fci, &fci_cache) != SUCCESS || Z_TYPE(result) == IS_UNDEF) {
|
||||||
efree(array_pos);
|
efree(array_pos);
|
||||||
|
|
|
@ -464,7 +464,6 @@ static void xml_call_handler(xml_parser *parser, zval *handler, zend_function *f
|
||||||
fci.retval = retval;
|
fci.retval = retval;
|
||||||
fci.param_count = argc;
|
fci.param_count = argc;
|
||||||
fci.params = argv;
|
fci.params = argv;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
result = zend_call_function(&fci, NULL);
|
result = zend_call_function(&fci, NULL);
|
||||||
if (result == FAILURE) {
|
if (result == FAILURE) {
|
||||||
|
|
|
@ -245,7 +245,6 @@ static void xsl_ext_function_php(xmlXPathParserContextPtr ctxt, int nargs, int t
|
||||||
ZVAL_COPY_VALUE(&fci.function_name, &handler);
|
ZVAL_COPY_VALUE(&fci.function_name, &handler);
|
||||||
fci.object = NULL;
|
fci.object = NULL;
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.no_separation = 1;
|
|
||||||
if (!zend_make_callable(&handler, &callable)) {
|
if (!zend_make_callable(&handler, &callable)) {
|
||||||
if (!EG(exception)) {
|
if (!EG(exception)) {
|
||||||
php_error_docref(NULL, E_WARNING, "Unable to call handler %s()", ZSTR_VAL(callable));
|
php_error_docref(NULL, E_WARNING, "Unable to call handler %s()", ZSTR_VAL(callable));
|
||||||
|
|
|
@ -308,7 +308,6 @@ static void user_stream_create_object(struct php_user_stream_wrapper *uwrap, php
|
||||||
fci.retval = &retval;
|
fci.retval = &retval;
|
||||||
fci.param_count = 0;
|
fci.param_count = 0;
|
||||||
fci.params = NULL;
|
fci.params = NULL;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
fcc.function_handler = uwrap->ce->constructor;
|
fcc.function_handler = uwrap->ce->constructor;
|
||||||
fcc.called_scope = Z_OBJCE_P(object);
|
fcc.called_scope = Z_OBJCE_P(object);
|
||||||
|
|
|
@ -122,7 +122,6 @@ static inline int phpdbg_call_register(phpdbg_param_t *stack) /* {{{ */
|
||||||
//???fci.symbol_table = zend_rebuild_symbol_table();
|
//???fci.symbol_table = zend_rebuild_symbol_table();
|
||||||
fci.object = NULL;
|
fci.object = NULL;
|
||||||
fci.retval = &fretval;
|
fci.retval = &fretval;
|
||||||
fci.no_separation = 1;
|
|
||||||
|
|
||||||
if (name->next) {
|
if (name->next) {
|
||||||
zval params;
|
zval params;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue