Initialize retval in INCLUDE_OR_EVAL

In case the eval'd code throws.
This commit is contained in:
Nikita Popov 2017-04-15 12:04:56 +02:00
parent 2b3ba5d4c7
commit cfa6fa1525
2 changed files with 4 additions and 0 deletions

View file

@ -5257,6 +5257,7 @@ ZEND_VM_HANDLER(73, ZEND_INCLUDE_OR_EVAL, CONST|TMPVAR|CV, ANY, EVAL)
if (RETURN_VALUE_USED(opline)) {
return_value = EX_VAR(opline->result.var);
ZVAL_NULL(return_value);
}
new_op_array->scope = EX(func)->op_array.scope;

View file

@ -3449,6 +3449,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HAN
if (RETURN_VALUE_USED(opline)) {
return_value = EX_VAR(opline->result.var);
ZVAL_NULL(return_value);
}
new_op_array->scope = EX(func)->op_array.scope;
@ -33629,6 +33630,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLE
if (RETURN_VALUE_USED(opline)) {
return_value = EX_VAR(opline->result.var);
ZVAL_NULL(return_value);
}
new_op_array->scope = EX(func)->op_array.scope;
@ -48262,6 +48264,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HA
if (RETURN_VALUE_USED(opline)) {
return_value = EX_VAR(opline->result.var);
ZVAL_NULL(return_value);
}
new_op_array->scope = EX(func)->op_array.scope;