Browse Source

Fixed bug with returning from internal function by reference

PHP-5.1
Dmitry Stogov 21 years ago
parent
commit
6b5f4da085
  1. 6
      Zend/zend_vm_def.h

6
Zend/zend_vm_def.h

@ -1838,8 +1838,10 @@ ZEND_VM_HELPER(zend_do_fcall_common_helper, ANY, ANY)
}
EG(current_execute_data) = EXECUTE_DATA;
EX_T(opline->result.u.var).var.ptr->is_ref = 0;
EX_T(opline->result.u.var).var.ptr->refcount = 1;
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->refcount = 1;
}
if (!return_value_used) {
zval_ptr_dtor(&EX_T(opline->result.u.var).var.ptr);
}

Loading…
Cancel
Save