From: Zeev Suraski Date: Thu, 25 Nov 2004 20:26:48 +0000 (+0000) Subject: Reverting get_method() signature change X-Git-Tag: php-5.0.3RC1~14 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a7cb6a88084970bd156aa45fde95e5676cdcfbac;p=php Reverting get_method() signature change --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index fbf971a6b3..f84a77ba92 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -2514,7 +2514,7 @@ int zend_init_method_call_handler(ZEND_OPCODE_HANDLER_ARGS) } /* First, locate the function. */ - EX(fbc) = Z_OBJ_HT_P(EX(object))->get_method(&EX(object), function_name_strval, function_name_strlen TSRMLS_CC); + EX(fbc) = Z_OBJ_HT_P(EX(object))->get_method(EX(object), function_name_strval, function_name_strlen TSRMLS_CC); if (!EX(fbc)) { zend_error(E_ERROR, "Call to undefined method %s::%s()", Z_OBJ_CLASS_NAME_P(EX(object)), function_name_strval); } diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index ac029eafba..de7a9f9fd2 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -685,7 +685,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS zend_error(E_ERROR, "Object does not support method calls"); } EX(function_state).function = - Z_OBJ_HT_PP(fci->object_pp)->get_method(fci->object_pp, Z_STRVAL_P(fci->function_name), Z_STRLEN_P(fci->function_name) TSRMLS_CC); + Z_OBJ_HT_PP(fci->object_pp)->get_method(*fci->object_pp, Z_STRVAL_P(fci->function_name), Z_STRLEN_P(fci->function_name) TSRMLS_CC); } else if (calling_scope) { char *function_name_lc = zend_str_tolower_dup(Z_STRVAL_P(fci->function_name), Z_STRLEN_P(fci->function_name)); diff --git a/Zend/zend_extensions.h b/Zend/zend_extensions.h index fb26c3cb35..7bd15e8f71 100644 --- a/Zend/zend_extensions.h +++ b/Zend/zend_extensions.h @@ -27,7 +27,7 @@ /* The first number is the engine version and the rest is the date. * This way engine 2 API no. is always greater than engine 1 API no.. */ -#define ZEND_EXTENSION_API_NO 220041030 +#define ZEND_EXTENSION_API_NO 220040412 typedef struct _zend_extension_version_info { int zend_extension_api_no; diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index 8b7d5bbff0..7965bb0eb3 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -666,12 +666,11 @@ ZEND_API int zend_check_protected(zend_class_entry *ce, zend_class_entry *scope) } -static union _zend_function *zend_std_get_method(zval **object_ptr, char *method_name, int method_len TSRMLS_DC) +static union _zend_function *zend_std_get_method(zval *object, char *method_name, int method_len TSRMLS_DC) { zend_object *zobj; zend_function *fbc; char *lc_method_name; - zval *object = *object_ptr; lc_method_name = do_alloca(method_len+1); /* Create a zend_copy_str_tolower(dest, src, src_length); */ diff --git a/Zend/zend_object_handlers.h b/Zend/zend_object_handlers.h index 92016789b0..4c8d12eda3 100644 --- a/Zend/zend_object_handlers.h +++ b/Zend/zend_object_handlers.h @@ -79,7 +79,7 @@ typedef HashTable *(*zend_object_get_properties_t)(zval *object TSRMLS_DC); /* Andi - EX(fbc) (function being called) needs to be initialized already in the INIT fcall opcode so that the parameters can be parsed the right way. We need to add another callback for this. */ typedef int (*zend_object_call_method_t)(char *method, INTERNAL_FUNCTION_PARAMETERS); -typedef union _zend_function *(*zend_object_get_method_t)(zval **object_ptr, char *method, int method_len TSRMLS_DC); +typedef union _zend_function *(*zend_object_get_method_t)(zval *object, char *method, int method_len TSRMLS_DC); typedef union _zend_function *(*zend_object_get_constructor_t)(zval *object TSRMLS_DC); /* Object maintenance/destruction */