diff options
author | Etienne Kneuss <colder@php.net> | 2008-11-19 02:00:53 +0000 |
---|---|---|
committer | Etienne Kneuss <colder@php.net> | 2008-11-19 02:00:53 +0000 |
commit | 3919b16f041a50ab279c02c5eabfa0483dbfb0d0 (patch) | |
tree | 37e5b1b9e5be276bddc38ce1ac6956f1fe005b2a /Zend/zend_execute_API.c | |
parent | 202426a1fbff9cbc29bec564ddb29a2972e90e69 (diff) | |
download | php-git-3919b16f041a50ab279c02c5eabfa0483dbfb0d0.tar.gz |
MFH: Fix #46241 (stacked error_handlers, error_handling in general)
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r-- | Zend/zend_execute_API.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 50a8598df1..222e3147db 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -943,14 +943,11 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS EG(opline_ptr) = original_opline_ptr; } else if (EX(function_state).function->type == ZEND_INTERNAL_FUNCTION) { int call_via_handler = (EX(function_state).function->common.fn_flags & ZEND_ACC_CALL_VIA_HANDLER) != 0; - zend_error_handling error_handling; - zend_save_error_handling(&error_handling TSRMLS_CC); ALLOC_INIT_ZVAL(*fci->retval_ptr_ptr); if (EX(function_state).function->common.scope) { EG(scope) = EX(function_state).function->common.scope; } ((zend_internal_function *) EX(function_state).function)->handler(fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, (fci->object_pp?*fci->object_pp:NULL), 1 TSRMLS_CC); - zend_restore_error_handling(&error_handling TSRMLS_CC); /* We shouldn't fix bad extensions here, because it can break proper ones (Bug #34045) if (!EX(function_state).function->common.return_reference) @@ -971,10 +968,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS /* Not sure what should be done here if it's a static method */ if (fci->object_pp) { - zend_error_handling error_handling; - zend_save_error_handling(&error_handling TSRMLS_CC); Z_OBJ_HT_PP(fci->object_pp)->call_method(EX(function_state).function->common.function_name, fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, *fci->object_pp, 1 TSRMLS_CC); - zend_restore_error_handling(&error_handling TSRMLS_CC); } else { zend_error_noreturn(E_ERROR, "Cannot call overloaded function for non-object"); } |