diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2016-07-14 13:05:27 +0300 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2016-07-14 13:05:27 +0300 |
| commit | f80bb059b35333116cd7b09e559e3f6144be0491 (patch) | |
| tree | ec81a91e4ece435c6f8876450c5f41ab4b83e1fd /Zend/zend_vm_execute.h | |
| parent | 8c5b27e0617bf0899d7e830ed3029711125a0ddb (diff) | |
| download | php-git-f80bb059b35333116cd7b09e559e3f6144be0491.tar.gz | |
Fixed memory leak
Diffstat (limited to 'Zend/zend_vm_execute.h')
| -rw-r--r-- | Zend/zend_vm_execute.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 174c6de1c1..d8197ee9f1 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -3637,6 +3637,10 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HAN } if (UNEXPECTED(EG(exception) != NULL)) { + if (new_op_array != NULL) { + destroy_op_array(new_op_array); + efree_size(new_op_array, sizeof(zend_op_array)); + } HANDLE_EXCEPTION(); } else if (EXPECTED(new_op_array != NULL)) { zval *return_value = NULL; @@ -29298,6 +29302,10 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLE } if (UNEXPECTED(EG(exception) != NULL)) { + if (new_op_array != NULL) { + destroy_op_array(new_op_array); + efree_size(new_op_array, sizeof(zend_op_array)); + } HANDLE_EXCEPTION(); } else if (EXPECTED(new_op_array != NULL)) { zval *return_value = NULL; @@ -40830,6 +40838,10 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HA } zval_ptr_dtor_nogc(free_op1); if (UNEXPECTED(EG(exception) != NULL)) { + if (new_op_array != NULL) { + destroy_op_array(new_op_array); + efree_size(new_op_array, sizeof(zend_op_array)); + } HANDLE_EXCEPTION(); } else if (EXPECTED(new_op_array != NULL)) { zval *return_value = NULL; |
