- Didn't lower refcount when doing an internal function call linked to a regular object.

This commit is contained in:
Andi Gutmans 1999-10-10 18:31:42 +00:00
parent 283dd53bf5
commit 3a88d5a68e

View File

@ -1463,7 +1463,10 @@ do_fcall_common:
zend_ptr_stack_push(&EG(argument_stack), (void *) opline->extended_value);
if (function_state.function->type==ZEND_INTERNAL_FUNCTION) {
var_uninit(&Ts[opline->result.u.var].tmp_var);
((zend_internal_function *) function_state.function)->handler(opline->extended_value, &Ts[opline->result.u.var].tmp_var, &EG(regular_list), &EG(persistent_list), (object.ptr?object.ptr:NULL));
((zend_internal_function *) function_state.function)->handler(opline->extended_value, &Ts[opline->result.u.var].tmp_var, &EG(regular_list), &EG(persistent_list), object.ptr);
if (object.ptr) {
object.ptr->refcount--;
}
} else if (function_state.function->type==ZEND_USER_FUNCTION) {
HashTable *calling_symbol_table;