From eb03f16442c7ee10842dde0140b933d2be60b84b Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Tue, 11 Apr 2017 18:46:16 +0800 Subject: Fixed bug #74408 (Endless loop bypassing execution time limit) --- Zend/zend_execute_API.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'Zend/zend_execute_API.c') diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 28a75b7190..ff2d22f1d4 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -755,6 +755,15 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache) / } zend_error(E_DEPRECATED, "%s", error); efree(error); + if (UNEXPECTED(EG(exception))) { + if (callable_name) { + zend_string_release(callable_name); + } + if (EG(current_execute_data) == &dummy_execute_data) { + EG(current_execute_data) = dummy_execute_data.prev_execute_data; + } + return FAILURE; + } } zend_string_release(callable_name); } -- cgit v1.2.1