diff options
author | Joe Watkins <krakjoe@php.net> | 2016-04-11 13:24:37 +0100 |
---|---|---|
committer | Joe Watkins <krakjoe@php.net> | 2016-04-11 13:24:37 +0100 |
commit | c0b821d2e941daf7ff9a4b43765d4f32a4c79c6b (patch) | |
tree | 7f7162e36bd112508ffa46def38d7c734ddaea8b | |
parent | 707941413d871f09fdfcdd833d87f86dcf884f48 (diff) | |
download | php-git-c0b821d2e941daf7ff9a4b43765d4f32a4c79c6b.tar.gz |
handle dummy frame
-rw-r--r-- | Zend/zend_execute_API.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index bdb9bb7bd5..1cbbc1a0a1 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -786,6 +786,9 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache) / if (func->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) { if (func->common.fn_flags & ZEND_ACC_ABSTRACT) { zend_throw_error(NULL, "Cannot call abstract method %s::%s()", ZSTR_VAL(func->common.scope->name), ZSTR_VAL(func->common.function_name)); + if (EG(current_execute_data) == &dummy_execute_data) { + EG(current_execute_data) = dummy_execute_data.prev_execute_data; + } return FAILURE; } if (func->common.fn_flags & ZEND_ACC_DEPRECATED) { |