diff options
Diffstat (limited to 'Zend/zend_compile.c')
-rw-r--r-- | Zend/zend_compile.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index ce0cb36766..8dda5e5d38 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -3085,7 +3085,11 @@ static void zend_free_foreach_and_switch_variables(TSRMLS_D) /* {{{ */ opnum_start = get_next_op_number(CG(active_op_array)); - zend_stack_apply(&CG(loop_var_stack), ZEND_STACK_APPLY_TOPDOWN, (int (*)(void *element)) generate_free_loop_var); +#ifdef ZTS + zend_stack_apply_with_argument(&CG(loop_var_stack), ZEND_STACK_APPLY_TOPDOWN, (int (*)(void *element, void *)) generate_free_loop_var, NULL); +#else + zend_stack_apply(&CG(loop_var_stack), ZEND_STACK_APPLY_TOPDOWN, (int (*)(void *element)) generate_free_loop_var); +#endif opnum_end = get_next_op_number(CG(active_op_array)); |