From: Felipe Pena Date: Thu, 24 Jul 2008 19:52:24 +0000 (+0000) Subject: - MFH: Added TSRMLS_DC to apply_func_args_t and zend_hash_apply_with_arguments. X-Git-Tag: php-5.3.0alpha1~143 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0fbe6a0c14a7f8bc664484c33615d48a213ab662;p=php - MFH: Added TSRMLS_DC to apply_func_args_t and zend_hash_apply_with_arguments. --- diff --git a/Zend/zend_API.c b/Zend/zend_API.c index c9eaf1f96c..cc30df3ca7 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -933,7 +933,7 @@ ZEND_API int _array_init(zval *arg, uint size ZEND_FILE_LINE_DC) /* {{{ */ } /* }}} */ -static int zend_merge_property(zval **value, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int zend_merge_property(zval **value TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { /* which name should a numeric property have ? */ if (hash_key->nKeyLength) { @@ -959,7 +959,7 @@ ZEND_API void zend_merge_properties(zval *obj, HashTable *properties, int destro zend_class_entry *old_scope = EG(scope); EG(scope) = Z_OBJCE_P(obj); - zend_hash_apply_with_arguments(properties, (apply_func_args_t)zend_merge_property, 2, obj, obj_ht); + zend_hash_apply_with_arguments(properties TSRMLS_CC, (apply_func_args_t)zend_merge_property, 2, obj, obj_ht); EG(scope) = old_scope; if (destroy_ht) { diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c index 5680646092..b23ee3a533 100644 --- a/Zend/zend_builtin_functions.c +++ b/Zend/zend_builtin_functions.c @@ -1628,7 +1628,7 @@ ZEND_FUNCTION(restore_exception_handler) /* }}} */ -static int copy_class_or_interface_name(zend_class_entry **pce, int num_args, va_list args, zend_hash_key *hash_key) +static int copy_class_or_interface_name(zend_class_entry **pce TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *array = va_arg(args, zval *); zend_uint mask = va_arg(args, zend_uint); @@ -1656,7 +1656,7 @@ ZEND_FUNCTION(get_declared_classes) } array_init(return_value); - zend_hash_apply_with_arguments(EG(class_table), (apply_func_args_t) copy_class_or_interface_name, 3, return_value, mask, comply); + zend_hash_apply_with_arguments(EG(class_table) TSRMLS_CC, (apply_func_args_t) copy_class_or_interface_name, 3, return_value, mask, comply); } /* }}} */ @@ -1672,12 +1672,12 @@ ZEND_FUNCTION(get_declared_interfaces) } array_init(return_value); - zend_hash_apply_with_arguments(EG(class_table), (apply_func_args_t) copy_class_or_interface_name, 3, return_value, mask, comply); + zend_hash_apply_with_arguments(EG(class_table) TSRMLS_CC, (apply_func_args_t) copy_class_or_interface_name, 3, return_value, mask, comply); } /* }}} */ -static int copy_function_name(zend_function *func, int num_args, va_list args, zend_hash_key *hash_key) +static int copy_function_name(zend_function *func TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *internal_ar = va_arg(args, zval *), *user_ar = va_arg(args, zval *); @@ -1714,7 +1714,7 @@ ZEND_FUNCTION(get_defined_functions) array_init(user); array_init(return_value); - zend_hash_apply_with_arguments(EG(function_table), (apply_func_args_t) copy_function_name, 2, internal, user); + zend_hash_apply_with_arguments(EG(function_table) TSRMLS_CC, (apply_func_args_t) copy_function_name, 2, internal, user); if (zend_hash_add(Z_ARRVAL_P(return_value), "internal", sizeof("internal"), (void **)&internal, sizeof(zval *), NULL) == FAILURE) { zval_ptr_dtor(&internal); diff --git a/Zend/zend_closures.c b/Zend/zend_closures.c index e72df41f07..f478578c3e 100644 --- a/Zend/zend_closures.c +++ b/Zend/zend_closures.c @@ -243,13 +243,12 @@ void zend_register_closure_ce(TSRMLS_D) /* {{{ */ } /* }}} */ -static int zval_copy_static_var(zval **p, int num_args, va_list args, zend_hash_key *key) /* {{{ */ +static int zval_copy_static_var(zval **p TSRMLS_DC, int num_args, va_list args, zend_hash_key *key) /* {{{ */ { HashTable *target = va_arg(args, HashTable*); zend_bool is_ref; if (Z_TYPE_PP(p) & (IS_LEXICAL_VAR|IS_LEXICAL_REF)) { - TSRMLS_FETCH(); is_ref = Z_TYPE_PP(p) & IS_LEXICAL_REF; if (!EG(active_symbol_table)) { @@ -297,7 +296,7 @@ ZEND_API void zend_create_closure(zval *res, zend_function *func, zend_class_ent ALLOC_HASHTABLE(closure->func.op_array.static_variables); zend_hash_init(closure->func.op_array.static_variables, zend_hash_num_elements(static_variables), NULL, ZVAL_PTR_DTOR, 0); - zend_hash_apply_with_arguments(static_variables, (apply_func_args_t)zval_copy_static_var, 1, closure->func.op_array.static_variables); + zend_hash_apply_with_arguments(static_variables TSRMLS_CC, (apply_func_args_t)zval_copy_static_var, 1, closure->func.op_array.static_variables); } (*closure->func.op_array.refcount)++; } diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 79c9afe185..2c020c63ec 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -2780,7 +2780,7 @@ ZEND_API void zend_do_inherit_interfaces(zend_class_entry *ce, zend_class_entry } } -static int inherit_static_prop(zval **p, int num_args, va_list args, zend_hash_key *key) +static int inherit_static_prop(zval **p TSRMLS_DC, int num_args, va_list args, zend_hash_key *key) { HashTable *target = va_arg(args, HashTable*); @@ -2812,9 +2812,9 @@ ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent if (parent_ce->type != ce->type) { /* User class extends internal class */ zend_update_class_constants(parent_ce TSRMLS_CC); - zend_hash_apply_with_arguments(CE_STATIC_MEMBERS(parent_ce), (apply_func_args_t)inherit_static_prop, 1, &ce->default_static_members); + zend_hash_apply_with_arguments(CE_STATIC_MEMBERS(parent_ce) TSRMLS_CC, (apply_func_args_t)inherit_static_prop, 1, &ce->default_static_members); } else { - zend_hash_apply_with_arguments(&parent_ce->default_static_members, (apply_func_args_t)inherit_static_prop, 1, &ce->default_static_members TSRMLS_CC); + zend_hash_apply_with_arguments(&parent_ce->default_static_members TSRMLS_CC, (apply_func_args_t)inherit_static_prop, 1, &ce->default_static_members TSRMLS_CC); } zend_hash_merge_ex(&ce->properties_info, &parent_ce->properties_info, (copy_ctor_func_t) (ce->type & ZEND_INTERNAL_CLASS ? zend_duplicate_property_info_internal : zend_duplicate_property_info), sizeof(zend_property_info), (merge_checker_func_t) do_inherit_property_access_check, ce); diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index f71b53db70..5f725a4b72 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -312,7 +312,7 @@ ZEND_METHOD(error_exception, getSeverity) /* }}} */ -static int _build_trace_args(zval **arg, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int _build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { char **str; int *len; @@ -372,7 +372,6 @@ static int _build_trace_args(zval **arg, int num_args, va_list args, zend_hash_k double dval = Z_DVAL_PP(arg); char *s_tmp; int l_tmp; - TSRMLS_FETCH(); s_tmp = emalloc(MAX_LENGTH_OF_DOUBLE + EG(precision) + 1); l_tmp = zend_sprintf(s_tmp, "%.*G", (int) EG(precision), dval); /* SAFE */ @@ -389,7 +388,6 @@ static int _build_trace_args(zval **arg, int num_args, va_list args, zend_hash_k char *class_name; zend_uint class_name_len; int dup; - TSRMLS_FETCH(); TRACE_APPEND_STR("Object("); @@ -410,7 +408,7 @@ static int _build_trace_args(zval **arg, int num_args, va_list args, zend_hash_k } /* }}} */ -static int _build_trace_string(zval **frame, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int _build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { char *s_tmp, **str; int *len, *num; @@ -445,7 +443,7 @@ static int _build_trace_string(zval **frame, int num_args, va_list args, zend_ha TRACE_APPEND_CHR('('); if (zend_hash_find(ht, "args", sizeof("args"), (void**)&tmp) == SUCCESS) { int last_len = *len; - zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp), (apply_func_args_t)_build_trace_args, 2, str, len); + zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp) TSRMLS_CC, (apply_func_args_t)_build_trace_args, 2, str, len); if (last_len != *len) { *len -= 2; /* remove last ', ' */ } @@ -464,7 +462,7 @@ ZEND_METHOD(exception, getTraceAsString) int res_len = 0, *len = &res_len, num = 0; trace = zend_read_property(default_exception_ce, getThis(), "trace", sizeof("trace")-1, 1 TSRMLS_CC); - zend_hash_apply_with_arguments(Z_ARRVAL_P(trace), (apply_func_args_t)_build_trace_string, 3, str, len, &num); + zend_hash_apply_with_arguments(Z_ARRVAL_P(trace) TSRMLS_CC, (apply_func_args_t)_build_trace_string, 3, str, len, &num); s_tmp = emalloc(1 + MAX_LENGTH_OF_LONG + 7 + 1); sprintf(s_tmp, "#%d {main}", num); diff --git a/Zend/zend_hash.c b/Zend/zend_hash.c index 51b0b6d11f..fe3757cadb 100644 --- a/Zend/zend_hash.c +++ b/Zend/zend_hash.c @@ -709,7 +709,7 @@ ZEND_API void zend_hash_apply_with_argument(HashTable *ht, apply_func_arg_t appl } -ZEND_API void zend_hash_apply_with_arguments(HashTable *ht, apply_func_args_t apply_func, int num_args, ...) +ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func_args_t apply_func, int num_args, ...) { Bucket *p; va_list args; @@ -726,7 +726,7 @@ ZEND_API void zend_hash_apply_with_arguments(HashTable *ht, apply_func_args_t ap hash_key.arKey = p->arKey; hash_key.nKeyLength = p->nKeyLength; hash_key.h = p->h; - result = apply_func(p->pData, num_args, args, &hash_key); + result = apply_func(p->pData TSRMLS_CC, num_args, args, &hash_key); if (result & ZEND_HASH_APPLY_REMOVE) { p = zend_hash_apply_deleter(ht, p); diff --git a/Zend/zend_hash.h b/Zend/zend_hash.h index 703f59ec05..2ec2c5b0f2 100644 --- a/Zend/zend_hash.h +++ b/Zend/zend_hash.h @@ -127,13 +127,13 @@ ZEND_API int zend_hash_add_empty_element(HashTable *ht, const char *arKey, uint typedef int (*apply_func_t)(void *pDest TSRMLS_DC); typedef int (*apply_func_arg_t)(void *pDest, void *argument TSRMLS_DC); -typedef int (*apply_func_args_t)(void *pDest, int num_args, va_list args, zend_hash_key *hash_key); +typedef int (*apply_func_args_t)(void *pDest TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key); ZEND_API void zend_hash_graceful_destroy(HashTable *ht); ZEND_API void zend_hash_graceful_reverse_destroy(HashTable *ht); ZEND_API void zend_hash_apply(HashTable *ht, apply_func_t apply_func TSRMLS_DC); ZEND_API void zend_hash_apply_with_argument(HashTable *ht, apply_func_arg_t apply_func, void * TSRMLS_DC); -ZEND_API void zend_hash_apply_with_arguments(HashTable *ht, apply_func_args_t apply_func, int, ...); +ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func_args_t apply_func, int, ...); /* This function should be used with special care (in other words, * it should usually not be used). When used with the ZEND_HASH_APPLY_STOP diff --git a/Zend/zend_ts_hash.c b/Zend/zend_ts_hash.c index 79feea56bd..5491585425 100644 --- a/Zend/zend_ts_hash.c +++ b/Zend/zend_ts_hash.c @@ -169,13 +169,13 @@ ZEND_API void zend_ts_hash_apply_with_argument(TsHashTable *ht, apply_func_arg_t end_write(ht); } -ZEND_API void zend_ts_hash_apply_with_arguments(TsHashTable *ht, apply_func_args_t apply_func, int num_args, ...) +ZEND_API void zend_ts_hash_apply_with_arguments(TsHashTable *ht TSRMLS_DC, apply_func_args_t apply_func, int num_args, ...) { va_list args; va_start(args, num_args); begin_write(ht); - zend_hash_apply_with_arguments(TS_HASH(ht), apply_func, num_args, args); + zend_hash_apply_with_arguments(TS_HASH(ht) TSRMLS_CC, apply_func, num_args, args); end_write(ht); va_end(args); } diff --git a/Zend/zend_ts_hash.h b/Zend/zend_ts_hash.h index 4543fb8b09..7bafef6bb0 100644 --- a/Zend/zend_ts_hash.h +++ b/Zend/zend_ts_hash.h @@ -72,7 +72,7 @@ ZEND_API int zend_ts_hash_add_empty_element(TsHashTable *ht, char *arKey, uint n ZEND_API void zend_ts_hash_graceful_destroy(TsHashTable *ht); ZEND_API void zend_ts_hash_apply(TsHashTable *ht, apply_func_t apply_func TSRMLS_DC); ZEND_API void zend_ts_hash_apply_with_argument(TsHashTable *ht, apply_func_arg_t apply_func, void * TSRMLS_DC); -ZEND_API void zend_ts_hash_apply_with_arguments(TsHashTable *ht, apply_func_args_t apply_func, int, ...); +ZEND_API void zend_ts_hash_apply_with_arguments(TsHashTable *ht TSRMLS_DC, apply_func_args_t apply_func, int, ...); ZEND_API void zend_ts_hash_reverse_apply(TsHashTable *ht, apply_func_t apply_func TSRMLS_DC); diff --git a/ext/mysqlnd/mysqlnd_debug.c b/ext/mysqlnd/mysqlnd_debug.c index d5a23db5d0..0722e27478 100644 --- a/ext/mysqlnd/mysqlnd_debug.c +++ b/ext/mysqlnd/mysqlnd_debug.c @@ -1002,7 +1002,7 @@ void _mysqlnd_free(void *ptr MYSQLND_MEM_D) /* }}} */ /* {{{ mysqlnd_build_trace_args */ -static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend_hash_key *hash_key) +static int mysqlnd_build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { char **str; int *len; @@ -1042,7 +1042,6 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend } case IS_UNICODE: { int l_added; - TSRMLS_FETCH(); /* * We do not want to apply current error mode here, since @@ -1095,7 +1094,6 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend double dval = Z_DVAL_PP(arg); char *s_tmp; int l_tmp; - TSRMLS_FETCH(); s_tmp = emalloc(MAX_LENGTH_OF_DOUBLE + EG(precision) + 1); l_tmp = zend_sprintf(s_tmp, "%.*G", (int) EG(precision), dval); /* SAFE */ @@ -1112,7 +1110,6 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend zstr class_name; zend_uint class_name_len; int dup; - TSRMLS_FETCH(); TRACE_APPEND_STR("Object("); @@ -1143,7 +1140,7 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend /* }}} */ -static int mysqlnd_build_trace_string(zval **frame, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int mysqlnd_build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { char *s_tmp, **str; int *len, *num; @@ -1179,7 +1176,7 @@ static int mysqlnd_build_trace_string(zval **frame, int num_args, va_list args, TRACE_APPEND_CHR('('); if (zend_ascii_hash_find(ht, "args", sizeof("args"), (void**)&tmp) == SUCCESS) { int last_len = *len; - zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp), (apply_func_args_t)mysqlnd_build_trace_args, 2, str, len); + zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp) TSRMLS_CC, (apply_func_args_t)mysqlnd_build_trace_args, 2, str, len); if (last_len != *len) { *len -= 2; /* remove last ', ' */ } @@ -1217,7 +1214,7 @@ static int mysqlnd_build_trace_string(zval **frame, int num_args, va_list args, /* }}} */ -static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int mysqlnd_build_trace_args(zval **arg TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { char **str; int *len; @@ -1277,7 +1274,6 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend double dval = Z_DVAL_PP(arg); char *s_tmp; int l_tmp; - TSRMLS_FETCH(); s_tmp = emalloc(MAX_LENGTH_OF_DOUBLE + EG(precision) + 1); l_tmp = zend_sprintf(s_tmp, "%.*G", (int) EG(precision), dval); /* SAFE */ @@ -1294,7 +1290,6 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend char *class_name; zend_uint class_name_len; int dup; - TSRMLS_FETCH(); TRACE_APPEND_STR("Object("); @@ -1315,7 +1310,7 @@ static int mysqlnd_build_trace_args(zval **arg, int num_args, va_list args, zend } /* }}} */ -static int mysqlnd_build_trace_string(zval **frame, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int mysqlnd_build_trace_string(zval **frame TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { char *s_tmp, **str; int *len, *num; @@ -1350,7 +1345,7 @@ static int mysqlnd_build_trace_string(zval **frame, int num_args, va_list args, TRACE_APPEND_CHR('('); if (zend_hash_find(ht, "args", sizeof("args"), (void**)&tmp) == SUCCESS) { int last_len = *len; - zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp), (apply_func_args_t)mysqlnd_build_trace_args, 2, str, len); + zend_hash_apply_with_arguments(Z_ARRVAL_PP(tmp) TSRMLS_CC, (apply_func_args_t)mysqlnd_build_trace_args, 2, str, len); if (last_len != *len) { *len -= 2; /* remove last ', ' */ } @@ -1371,7 +1366,7 @@ char * mysqlnd_get_backtrace(TSRMLS_D) MAKE_STD_ZVAL(trace); zend_fetch_debug_backtrace(trace, 0, 0 TSRMLS_CC); - zend_hash_apply_with_arguments(Z_ARRVAL_P(trace), (apply_func_args_t)mysqlnd_build_trace_string, 3, str, len, &num); + zend_hash_apply_with_arguments(Z_ARRVAL_P(trace) TSRMLS_CC, (apply_func_args_t)mysqlnd_build_trace_string, 3, str, len, &num); zval_ptr_dtor(&trace); s_tmp = emalloc(1 + MAX_LENGTH_OF_LONG + 7 + 1); diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index 601850fdb7..c746d7e5bc 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -835,7 +835,7 @@ static void _property_string(string *str, zend_property_info *prop, char *prop_n } /* }}} */ -static int _extension_ini_string(zend_ini_entry *ini_entry, int num_args, va_list args, zend_hash_key *hash_key) +static int _extension_ini_string(zend_ini_entry *ini_entry TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { string *str = va_arg(args, string *); char *indent = va_arg(args, char *); @@ -870,13 +870,12 @@ static int _extension_ini_string(zend_ini_entry *ini_entry, int num_args, va_lis return ZEND_HASH_APPLY_KEEP; } -static int _extension_class_string(zend_class_entry **pce, int num_args, va_list args, zend_hash_key *hash_key) +static int _extension_class_string(zend_class_entry **pce TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { string *str = va_arg(args, string *); char *indent = va_arg(args, char *); struct _zend_module_entry *module = va_arg(args, struct _zend_module_entry*); int *num_classes = va_arg(args, int*); - TSRMLS_FETCH(); if ((*pce)->module && !strcasecmp((*pce)->module->name, module->name)) { string_printf(str, "\n"); @@ -886,7 +885,7 @@ static int _extension_class_string(zend_class_entry **pce, int num_args, va_list return ZEND_HASH_APPLY_KEEP; } -static int _extension_const_string(zend_constant *constant, int num_args, va_list args, zend_hash_key *hash_key) +static int _extension_const_string(zend_constant *constant TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { string *str = va_arg(args, string *); char *indent = va_arg(args, char *); @@ -894,7 +893,6 @@ static int _extension_const_string(zend_constant *constant, int num_args, va_lis int *num_classes = va_arg(args, int*); if (constant->module_number == module->module_number) { - TSRMLS_FETCH(); _const_string(str, constant->name, &constant->value, indent TSRMLS_CC); (*num_classes)++; } @@ -953,7 +951,7 @@ static void _extension_string(string *str, zend_module_entry *module, char *inde { string str_ini; string_init(&str_ini); - zend_hash_apply_with_arguments(EG(ini_directives), (apply_func_args_t) _extension_ini_string, 3, &str_ini, indent, module->module_number); + zend_hash_apply_with_arguments(EG(ini_directives) TSRMLS_CC, (apply_func_args_t) _extension_ini_string, 3, &str_ini, indent, module->module_number); if (str_ini.len > 1) { string_printf(str, "\n - INI {\n"); string_append(str, &str_ini); @@ -967,7 +965,7 @@ static void _extension_string(string *str, zend_module_entry *module, char *inde int num_constants = 0; string_init(&str_constants); - zend_hash_apply_with_arguments(EG(zend_constants), (apply_func_args_t) _extension_const_string, 4, &str_constants, indent, module, &num_constants TSRMLS_CC); + zend_hash_apply_with_arguments(EG(zend_constants) TSRMLS_CC, (apply_func_args_t) _extension_const_string, 4, &str_constants, indent, module, &num_constants TSRMLS_CC); if (num_constants) { string_printf(str, "\n - Constants [%d] {\n", num_constants); string_append(str, &str_constants); @@ -1004,7 +1002,7 @@ static void _extension_string(string *str, zend_module_entry *module, char *inde string_init(&sub_indent); string_printf(&sub_indent, "%s ", indent); string_init(&str_classes); - zend_hash_apply_with_arguments(EG(class_table), (apply_func_args_t) _extension_class_string, 4, &str_classes, sub_indent.string, module, &num_classes TSRMLS_CC); + zend_hash_apply_with_arguments(EG(class_table) TSRMLS_CC, (apply_func_args_t) _extension_class_string, 4, &str_classes, sub_indent.string, module, &num_classes TSRMLS_CC); if (num_classes) { string_printf(str, "\n - Classes [%d] {", num_classes); string_append(str, &str_classes); @@ -3149,7 +3147,7 @@ ZEND_METHOD(reflection_class, getMethod) /* }}} */ /* {{{ _addmethod */ -static int _addmethod(zend_function *mptr, int num_args, va_list args, zend_hash_key *hash_key) +static int _addmethod(zend_function *mptr TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *method; zend_class_entry *ce = *va_arg(args, zend_class_entry**); @@ -3157,7 +3155,6 @@ static int _addmethod(zend_function *mptr, int num_args, va_list args, zend_hash long filter = va_arg(args, long); if (mptr->common.fn_flags & filter) { - TSRMLS_FETCH(); ALLOC_ZVAL(method); reflection_method_factory(ce, mptr, method TSRMLS_CC); add_next_index_zval(retval, method); @@ -3188,7 +3185,7 @@ ZEND_METHOD(reflection_class, getMethods) GET_REFLECTION_OBJECT_PTR(ce); array_init(return_value); - zend_hash_apply_with_arguments(&ce->function_table, (apply_func_args_t) _addmethod, 3, &ce, return_value, filter); + zend_hash_apply_with_arguments(&ce->function_table TSRMLS_CC, (apply_func_args_t) _addmethod, 3, &ce, return_value, filter); } /* }}} */ @@ -3279,7 +3276,7 @@ ZEND_METHOD(reflection_class, getProperty) /* }}} */ /* {{{ _addproperty */ -static int _addproperty(zend_property_info *pptr, int num_args, va_list args, zend_hash_key *hash_key) +static int _addproperty(zend_property_info *pptr TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *property; zend_class_entry *ce = *va_arg(args, zend_class_entry**); @@ -3291,7 +3288,6 @@ static int _addproperty(zend_property_info *pptr, int num_args, va_list args, ze } if (pptr->flags & filter) { - TSRMLS_FETCH(); ALLOC_ZVAL(property); reflection_property_factory(ce, pptr, property TSRMLS_CC); add_next_index_zval(retval, property); @@ -3301,12 +3297,11 @@ static int _addproperty(zend_property_info *pptr, int num_args, va_list args, ze /* }}} */ /* {{{ _adddynproperty */ -static int _adddynproperty(zval **pptr, int num_args, va_list args, zend_hash_key *hash_key) +static int _adddynproperty(zval **pptr TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *property; zend_class_entry *ce = *va_arg(args, zend_class_entry**); zval *retval = va_arg(args, zval*), member; - TSRMLS_FETCH(); if (hash_key->arKey[0] == '\0') { return 0; /* non public cannot be dynamic */ @@ -3344,11 +3339,11 @@ ZEND_METHOD(reflection_class, getProperties) GET_REFLECTION_OBJECT_PTR(ce); array_init(return_value); - zend_hash_apply_with_arguments(&ce->properties_info, (apply_func_args_t) _addproperty, 3, &ce, return_value, filter); + zend_hash_apply_with_arguments(&ce->properties_info TSRMLS_CC, (apply_func_args_t) _addproperty, 3, &ce, return_value, filter); if (intern->obj && (filter & ZEND_ACC_PUBLIC) != 0 && Z_OBJ_HT_P(intern->obj)->get_properties) { HashTable *properties = Z_OBJ_HT_P(intern->obj)->get_properties(intern->obj TSRMLS_CC); - zend_hash_apply_with_arguments(properties, (apply_func_args_t) _adddynproperty, 2, &ce, return_value); + zend_hash_apply_with_arguments(properties TSRMLS_CC, (apply_func_args_t) _adddynproperty, 2, &ce, return_value); } } /* }}} */ @@ -4427,7 +4422,7 @@ ZEND_METHOD(reflection_extension, getFunctions) } /* }}} */ -static int _addconstant(zend_constant *constant, int num_args, va_list args, zend_hash_key *hash_key) +static int _addconstant(zend_constant *constant TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *const_val; zval *retval = va_arg(args, zval*); @@ -4454,12 +4449,12 @@ ZEND_METHOD(reflection_extension, getConstants) GET_REFLECTION_OBJECT_PTR(module); array_init(return_value); - zend_hash_apply_with_arguments(EG(zend_constants), (apply_func_args_t) _addconstant, 2, return_value, module->module_number); + zend_hash_apply_with_arguments(EG(zend_constants) TSRMLS_CC, (apply_func_args_t) _addconstant, 2, return_value, module->module_number); } /* }}} */ /* {{{ _addinientry */ -static int _addinientry(zend_ini_entry *ini_entry, int num_args, va_list args, zend_hash_key *hash_key) +static int _addinientry(zend_ini_entry *ini_entry TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *retval = va_arg(args, zval*); int number = va_arg(args, int); @@ -4486,19 +4481,18 @@ ZEND_METHOD(reflection_extension, getINIEntries) GET_REFLECTION_OBJECT_PTR(module); array_init(return_value); - zend_hash_apply_with_arguments(EG(ini_directives), (apply_func_args_t) _addinientry, 2, return_value, module->module_number); + zend_hash_apply_with_arguments(EG(ini_directives) TSRMLS_CC, (apply_func_args_t) _addinientry, 2, return_value, module->module_number); } /* }}} */ /* {{{ add_extension_class */ -static int add_extension_class(zend_class_entry **pce, int num_args, va_list args, zend_hash_key *hash_key) +static int add_extension_class(zend_class_entry **pce TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *class_array = va_arg(args, zval*), *zclass; struct _zend_module_entry *module = va_arg(args, struct _zend_module_entry*); int add_reflection_class = va_arg(args, int); if ((*pce)->module && !strcasecmp((*pce)->module->name, module->name)) { - TSRMLS_FETCH(); if (add_reflection_class) { ALLOC_ZVAL(zclass); zend_reflection_class_factory(*pce, zclass TSRMLS_CC); @@ -4522,7 +4516,7 @@ ZEND_METHOD(reflection_extension, getClasses) GET_REFLECTION_OBJECT_PTR(module); array_init(return_value); - zend_hash_apply_with_arguments(EG(class_table), (apply_func_args_t) add_extension_class, 3, return_value, module, 1 TSRMLS_CC); + zend_hash_apply_with_arguments(EG(class_table) TSRMLS_CC, (apply_func_args_t) add_extension_class, 3, return_value, module, 1 TSRMLS_CC); } /* }}} */ @@ -4537,7 +4531,7 @@ ZEND_METHOD(reflection_extension, getClassNames) GET_REFLECTION_OBJECT_PTR(module); array_init(return_value); - zend_hash_apply_with_arguments(EG(class_table), (apply_func_args_t) add_extension_class, 3, return_value, module, 0 TSRMLS_CC); + zend_hash_apply_with_arguments(EG(class_table) TSRMLS_CC, (apply_func_args_t) add_extension_class, 3, return_value, module, 0 TSRMLS_CC); } /* }}} */ diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index e197d67749..e4725785e5 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -4887,7 +4887,7 @@ PHP_FUNCTION(get_current_user) /* {{{ add_config_entry_cb */ -static int add_config_entry_cb(zval *entry, int num_args, va_list args, zend_hash_key *hash_key TSRMLS_DC) +static int add_config_entry_cb(zval *entry TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) { zval *retval = (zval *) va_arg(args, int); zval *tmp; @@ -4901,7 +4901,7 @@ static int add_config_entry_cb(zval *entry, int num_args, va_list args, zend_has } else if (Z_TYPE_P(entry) == IS_ARRAY) { MAKE_STD_ZVAL(tmp); array_init(tmp); - zend_hash_apply_with_arguments(Z_ARRVAL_P(entry), (apply_func_args_t) add_config_entry_cb, 1, tmp TSRMLS_CC); + zend_hash_apply_with_arguments(Z_ARRVAL_P(entry) TSRMLS_CC, (apply_func_args_t) add_config_entry_cb, 1, tmp); add_assoc_zval_ex(retval, hash_key->arKey, hash_key->nKeyLength, tmp); } return 0; @@ -4925,7 +4925,7 @@ PHP_FUNCTION(get_cfg_var) if (retval) { if (Z_TYPE_P(retval) == IS_ARRAY) { array_init(return_value); - zend_hash_apply_with_arguments(Z_ARRVAL_P(retval), (apply_func_args_t) add_config_entry_cb, 1, return_value TSRMLS_CC); + zend_hash_apply_with_arguments(Z_ARRVAL_P(retval) TSRMLS_CC, (apply_func_args_t) add_config_entry_cb, 1, return_value); return; } else { RETURN_STRING(Z_STRVAL_P(retval), 1); @@ -5604,7 +5604,7 @@ PHP_FUNCTION(ini_get) } /* }}} */ -static int php_ini_get_option(zend_ini_entry *ini_entry, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int php_ini_get_option(zend_ini_entry *ini_entry TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { zval *ini_array = va_arg(args, zval *); int module_number = va_arg(args, int); @@ -5675,7 +5675,7 @@ PHP_FUNCTION(ini_get_all) } array_init(return_value); - zend_hash_apply_with_arguments(EG(ini_directives), (apply_func_args_t) php_ini_get_option, 2, return_value, extnumber, details TSRMLS_CC); + zend_hash_apply_with_arguments(EG(ini_directives) TSRMLS_CC, (apply_func_args_t) php_ini_get_option, 2, return_value, extnumber, details); } /* }}} */ @@ -6290,17 +6290,16 @@ PHP_FUNCTION(config_get_hash) /* {{{ */ HashTable *hash = php_ini_get_configuration_hash(); array_init(return_value); - zend_hash_apply_with_arguments(hash, (apply_func_args_t) add_config_entry_cb, 1, return_value TSRMLS_CC); + zend_hash_apply_with_arguments(hash TSRMLS_CC, (apply_func_args_t) add_config_entry_cb, 1, return_value); } /* }}} */ #endif -static int copy_request_variable(void *pDest, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int copy_request_variable(void *pDest TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { zval *prefix, new_key; int prefix_len; zval **var = (zval **) pDest; - TSRMLS_FETCH(); if (num_args != 1) { return 0; @@ -6367,18 +6366,18 @@ PHP_FUNCTION(import_request_variables) case 'g': case 'G': - zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_GET]), (apply_func_args_t) copy_request_variable, 1, prefix); + zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_GET]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); break; case 'p': case 'P': - zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_POST]), (apply_func_args_t) copy_request_variable, 1, prefix); - zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_FILES]), (apply_func_args_t) copy_request_variable, 1, prefix); + zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_POST]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); + zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_FILES]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); break; case 'c': case 'C': - zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]), (apply_func_args_t) copy_request_variable, 1, prefix); + zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); break; } } diff --git a/ext/standard/browscap.c b/ext/standard/browscap.c index 5f82bb2535..21fa813d87 100644 --- a/ext/standard/browscap.c +++ b/ext/standard/browscap.c @@ -212,7 +212,7 @@ PHP_MSHUTDOWN_FUNCTION(browscap) /* {{{ */ } /* }}} */ -static int browser_reg_compare(zval **browser, int num_args, va_list args, zend_hash_key *key) /* {{{ */ +static int browser_reg_compare(zval **browser TSRMLS_DC, int num_args, va_list args, zend_hash_key *key) /* {{{ */ { zval **browser_regex, **previous_match; regex_t r; @@ -329,7 +329,7 @@ PHP_FUNCTION(get_browser) if (zend_hash_find(&browser_hash, lookup_browser_name, agent_name_len + 1, (void **) &agent) == FAILURE) { found_browser_entry = NULL; - zend_hash_apply_with_arguments(&browser_hash, (apply_func_args_t) browser_reg_compare, 2, lookup_browser_name, &found_browser_entry); + zend_hash_apply_with_arguments(&browser_hash TSRMLS_CC, (apply_func_args_t) browser_reg_compare, 2, lookup_browser_name, &found_browser_entry); if (found_browser_entry) { agent = &found_browser_entry; diff --git a/ext/standard/var.c b/ext/standard/var.c index 082fcfb194..6f4fe05361 100644 --- a/ext/standard/var.c +++ b/ext/standard/var.c @@ -35,10 +35,9 @@ #define COMMON (Z_ISREF_PP(struc) ? "&" : "") /* }}} */ -static int php_array_element_dump(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int php_array_element_dump(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -54,11 +53,10 @@ static int php_array_element_dump(zval **zv, int num_args, va_list args, zend_ha } /* }}} */ -static int php_object_property_dump(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int php_object_property_dump(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; char *prop_name, *class_name; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -91,7 +89,7 @@ PHPAPI void php_var_dump(zval **struc, int level TSRMLS_DC) /* {{{ */ HashTable *myht; char *class_name; zend_uint class_name_len; - int (*php_element_dump_func)(zval**, int, va_list, zend_hash_key*); + int (*php_element_dump_func)(zval** TSRMLS_DC, int, va_list, zend_hash_key*); int is_temp; if (level > 1) { @@ -139,7 +137,7 @@ PHPAPI void php_var_dump(zval **struc, int level TSRMLS_DC) /* {{{ */ php_element_dump_func = php_object_property_dump; head_done: if (myht) { - zend_hash_apply_with_arguments(myht, (apply_func_args_t) php_element_dump_func, 1, level); + zend_hash_apply_with_arguments(myht TSRMLS_CC, (apply_func_args_t) php_element_dump_func, 1, level); if (is_temp) { zend_hash_destroy(myht); efree(myht); @@ -183,10 +181,9 @@ PHP_FUNCTION(var_dump) } /* }}} */ -static int zval_array_element_dump(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int zval_array_element_dump(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -208,11 +205,10 @@ static int zval_array_element_dump(zval **zv, int num_args, va_list args, zend_h } /* }}} */ -static int zval_object_property_dump(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int zval_object_property_dump(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; char *prop_name, *class_name; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -244,7 +240,7 @@ PHPAPI void php_debug_zval_dump(zval **struc, int level TSRMLS_DC) /* {{{ */ char *class_name; zend_uint class_name_len; zend_class_entry *ce; - int (*zval_element_dump_func)(zval**, int, va_list, zend_hash_key*); + int (*zval_element_dump_func)(zval** TSRMLS_DC, int, va_list, zend_hash_key*); int is_temp = 0; if (level > 1) { @@ -291,7 +287,7 @@ PHPAPI void php_debug_zval_dump(zval **struc, int level TSRMLS_DC) /* {{{ */ zval_element_dump_func = zval_object_property_dump; head_done: if (myht) { - zend_hash_apply_with_arguments(myht, (apply_func_args_t) zval_element_dump_func, 1, level, (Z_TYPE_PP(struc) == IS_ARRAY ? 0 : 1)); + zend_hash_apply_with_arguments(myht TSRMLS_CC, (apply_func_args_t) zval_element_dump_func, 1, level, (Z_TYPE_PP(struc) == IS_ARRAY ? 0 : 1)); if (is_temp) { zend_hash_destroy(myht); efree(myht); @@ -335,10 +331,9 @@ PHP_FUNCTION(debug_zval_dump) } /* }}} */ -static int php_array_element_export(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int php_array_element_export(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -361,11 +356,10 @@ static int php_array_element_export(zval **zv, int num_args, va_list args, zend_ } /* }}} */ -static int php_object_element_export(zval **zv, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ +static int php_object_element_export(zval **zv TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */ { int level; char *prop_name, *class_name; - TSRMLS_FETCH(); level = va_arg(args, int); @@ -416,7 +410,7 @@ PHPAPI void php_var_export(zval **struc, int level TSRMLS_DC) /* {{{ */ php_printf("\n%*c", level - 1, ' '); } PUTS ("array (\n"); - zend_hash_apply_with_arguments(myht, (apply_func_args_t) php_array_element_export, 1, level, (Z_TYPE_PP(struc) == IS_ARRAY ? 0 : 1)); + zend_hash_apply_with_arguments(myht TSRMLS_CC, (apply_func_args_t) php_array_element_export, 1, level, (Z_TYPE_PP(struc) == IS_ARRAY ? 0 : 1)); if (level > 1) { php_printf("%*c", level - 1, ' '); } @@ -431,7 +425,7 @@ PHPAPI void php_var_export(zval **struc, int level TSRMLS_DC) /* {{{ */ php_printf ("%s::__set_state(array(\n", class_name); efree(class_name); if (myht) { - zend_hash_apply_with_arguments(myht, (apply_func_args_t) php_object_element_export, 1, level); + zend_hash_apply_with_arguments(myht TSRMLS_CC, (apply_func_args_t) php_object_element_export, 1, level); } if (level > 1) { php_printf("%*c", level - 1, ' ');