mirror of
https://github.com/php/php-src.git
synced 2025-08-20 01:14:28 +02:00
Fixed bug with returning from internal function by reference
This commit is contained in:
parent
8a3d3aefbb
commit
6b5f4da085
1 changed files with 4 additions and 2 deletions
|
@ -1838,8 +1838,10 @@ ZEND_VM_HELPER(zend_do_fcall_common_helper, ANY, ANY)
|
||||||
}
|
}
|
||||||
|
|
||||||
EG(current_execute_data) = EXECUTE_DATA;
|
EG(current_execute_data) = EXECUTE_DATA;
|
||||||
|
if (!EX(function_state).function->common.return_reference) {
|
||||||
EX_T(opline->result.u.var).var.ptr->is_ref = 0;
|
EX_T(opline->result.u.var).var.ptr->is_ref = 0;
|
||||||
EX_T(opline->result.u.var).var.ptr->refcount = 1;
|
EX_T(opline->result.u.var).var.ptr->refcount = 1;
|
||||||
|
}
|
||||||
if (!return_value_used) {
|
if (!return_value_used) {
|
||||||
zval_ptr_dtor(&EX_T(opline->result.u.var).var.ptr);
|
zval_ptr_dtor(&EX_T(opline->result.u.var).var.ptr);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue