From: Zeev Suraski Date: Tue, 27 Jul 1999 00:14:34 +0000 (+0000) Subject: Set reference count and is_ref values for new objects X-Git-Tag: php-4.0b2~107 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9d0d2e5a69b8f1c2b53f715b2af1e115f0d244a1;p=php Set reference count and is_ref values for new objects --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index a6663fee59..8751982264 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -1332,7 +1332,6 @@ binary_assign_op_addr: { } else { /* used for member function calls */ object_ptr = _get_object_zval_ptr(&opline->op1, Ts, &free_op1 ELS_CC); - if (!object_ptr || ((object_ptr->type==IS_OBJECT) && (object_ptr->value.obj.ce->handle_function_call))) { /* overloaded function call */ zend_overloaded_element overloaded_element; @@ -1694,6 +1693,9 @@ send_by_ref: zend_error(E_ERROR, "Cannot instanciate non-existant class: %s", class_name.value.str.val); } object_init_ex(&Ts[opline->result.u.var].tmp_var, ce); + Ts[opline->result.u.var].tmp_var.refcount=1; + Ts[opline->result.u.var].tmp_var.EA.is_ref=1; + Ts[opline->result.u.var].tmp_var.EA.locks=0; zval_dtor(&class_name); FREE_OP(&opline->op1, free_op1);