summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.c
diff options
context:
space:
mode:
authorAndi Gutmans <andi@php.net>1999-07-19 19:58:44 +0000
committerAndi Gutmans <andi@php.net>1999-07-19 19:58:44 +0000
commite78fc33c355da47ec6b94477cd89b830f63f2db7 (patch)
tree1530da7b845a962c126381474670486c7b4c8979 /Zend/zend_execute.c
parent5fdd45695bf9fd2055e65e6acee14af112f63d0f (diff)
downloadphp-git-e78fc33c355da47ec6b94477cd89b830f63f2db7.tar.gz
* Fix Zend version
* Fix a method call bug
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r--Zend/zend_execute.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index e35e86fab1..c0244b74a0 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1294,7 +1294,8 @@ binary_assign_op_addr: {
object_ptr = get_zval_ptr_ptr(&opline->op1, Ts, BP_VAR_R);
- if (!object_ptr || (*object_ptr)->value.obj.ce->handle_function_call) { /* overloaded function call */
+ if (!object_ptr
+ || ((*object_ptr)->type==IS_OBJECT && (*object_ptr)->value.obj.ce->handle_function_call)) { /* overloaded function call */
zend_overloaded_element overloaded_element;
zend_property_reference *property_reference;
@@ -1304,10 +1305,6 @@ binary_assign_op_addr: {
if (object_ptr) {
zend_property_reference property_reference;
- if ((*object_ptr)->type != IS_OBJECT) {
- zend_error(E_ERROR, "Call to a member function on a non-object");
- }
-
property_reference.object = object_ptr;
property_reference.type = BP_VAR_NA;
zend_llist_init(&property_reference.elements_list, sizeof(zend_overloaded_element), NULL, 0);