diff options
author | Xinchen Hui <laruence@php.net> | 2012-02-08 03:03:05 +0000 |
---|---|---|
committer | Xinchen Hui <laruence@php.net> | 2012-02-08 03:03:05 +0000 |
commit | ff63c09e6f4e5c7119aaf00d2af9c55f68cff168 (patch) | |
tree | 2eaa55ac141cf2cd19df159b0cc29533b01e2af3 /Zend/zend_execute_API.c | |
parent | d305d7a863a9c736a9c03cba1da9120ca497d049 (diff) | |
download | php-git-ff63c09e6f4e5c7119aaf00d2af9c55f68cff168.tar.gz |
Revert -r319102 and -r322922 in 5.4 branch since they introduce #60978
Fixed #60978 in trunk without reverting previous fix
#see http://news.php.net/php.internals/57789
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r-- | Zend/zend_execute_API.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index f9048dada3..10adfb6a26 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -1195,11 +1195,12 @@ ZEND_API int zend_eval_stringl(char *str, int str_len, zval *retval_ptr, char *s } CG(interactive) = 0; - retval = SUCCESS; zend_try { zend_execute(new_op_array TSRMLS_CC); } zend_catch { - retval = FAILURE; + destroy_op_array(new_op_array TSRMLS_CC); + efree(new_op_array); + zend_bailout(); } zend_end_try(); CG(interactive) = orig_interactive; @@ -1221,6 +1222,7 @@ ZEND_API int zend_eval_stringl(char *str, int str_len, zval *retval_ptr, char *s destroy_op_array(new_op_array TSRMLS_CC); efree(new_op_array); EG(return_value_ptr_ptr) = original_return_value_ptr_ptr; + retval = SUCCESS; } else { retval = FAILURE; } |