From 82f0c9e7aa79bc31cf96f23d87e7c0513748b1e2 Mon Sep 17 00:00:00 2001 From: Marcus Boerger Date: Wed, 7 Jan 2004 00:02:04 +0000 Subject: [PATCH] Revert patch that allowed to call sttaic methods via $method() --- Zend/zend_execute.c | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 9e6d3a46e9..f3acee7d1f 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -169,11 +169,7 @@ static inline void zend_fetch_property_address_inner(zval *object, znode *op2, z } if (Z_OBJ_HT_P(object)->get_property_ptr_ptr) { - zval **ptr_ptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, prop_ptr TSRMLS_CC); - if(NULL == ptr_ptr) { - zend_error(E_ERROR, "Cannot access undefined property for object with overloaded property access"); - } - T(result->u.var).var.ptr_ptr = ptr_ptr; + T(result->u.var).var.ptr_ptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, prop_ptr TSRMLS_CC); } else if (Z_OBJ_HT_P(object)->read_property) { T(result->u.var).var.ptr = Z_OBJ_HT_P(object)->read_property(object, prop_ptr, 0 TSRMLS_CC); T(result->u.var).var.ptr_ptr = &T(result->u.var).var.ptr; @@ -2470,25 +2466,8 @@ int zend_init_fcall_by_name_handler(ZEND_OPCODE_HANDLER_ARGS) lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen); if (zend_hash_find(EG(function_table), lcname, function_name_strlen+1, (void **) &function)==FAILURE) { - char *method; - zend_class_entry **pce; - - if ((method = strstr(lcname, "::")) != NULL) { - *method = '\0'; - method +=2; - if (zend_lookup_class(lcname, strlen(lcname), &pce TSRMLS_CC) == SUCCESS) { - if (zend_hash_find(&(*pce)->function_table, method, strlen(method)+1, (void **) &function) == FAILURE) { - efree(lcname); - zend_error(E_ERROR, "Call to undefined method %s()", function_name_strval); - } - } else { - efree(lcname); - zend_error(E_ERROR, "Call to method of undefined class %s()", function_name_strval); - } - } else { - efree(lcname); - zend_error(E_ERROR, "Call to undefined function %s()", function_name_strval); - } + efree(lcname); + zend_error(E_ERROR, "Call to undefined function %s()", function_name_strval); } efree(lcname); -- 2.50.1