diff options
author | Andi Gutmans <andi@php.net> | 2002-06-26 14:24:23 +0000 |
---|---|---|
committer | Andi Gutmans <andi@php.net> | 2002-06-26 14:24:23 +0000 |
commit | 28247f572a226c9e58d9c1593e7be8dae8da8bd8 (patch) | |
tree | 477fe80a0eab5929ee7ea27313dbd463b203582e | |
parent | f9b21c4b7dbbd2dfd1392ed15acf51fa694bd75c (diff) | |
download | php-git-28247f572a226c9e58d9c1593e7be8dae8da8bd8.tar.gz |
- Centralize global class fetch
-rw-r--r-- | Zend/zend_API.c | 2 | ||||
-rw-r--r-- | Zend/zend_builtin_functions.c | 7 | ||||
-rw-r--r-- | Zend/zend_mm.h | 2 |
3 files changed, 6 insertions, 5 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index c0d00c48f8..cfd9159ac3 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -1362,7 +1362,7 @@ zend_bool zend_is_callable(zval *callable, zend_bool syntax_only, char **callabl lcname = estrndup(Z_STRVAL_PP(obj), Z_STRLEN_PP(obj)); zend_str_tolower(lcname, Z_STRLEN_PP(obj)); - if(zend_hash_find(EG(class_table), lcname, Z_STRLEN_PP(obj) + 1, (void**)&pce) == SUCCESS) { + if (zend_lookup_class(lcname, Z_STRLEN_PP(obj), &pce TSRMLS_CC) == SUCCESS) { ce = *pce; } diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c index 0fd566ec60..971b1a4e7a 100644 --- a/Zend/zend_builtin_functions.c +++ b/Zend/zend_builtin_functions.c @@ -559,7 +559,7 @@ ZEND_FUNCTION(get_parent_class) SEPARATE_ZVAL(arg); zend_str_tolower(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg)); - if(zend_hash_find(EG(class_table), Z_STRVAL_PP(arg), Z_STRLEN_PP(arg)+1, (void **)&pce) == SUCCESS) { + if (zend_lookup_class(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg), &pce TSRMLS_CC) == SUCCESS) { ce = *pce; } } @@ -647,7 +647,7 @@ ZEND_FUNCTION(get_class_vars) lcname = estrndup((*class_name)->value.str.val, (*class_name)->value.str.len); zend_str_tolower(lcname, (*class_name)->value.str.len); - if (zend_hash_find(EG(class_table), lcname, (*class_name)->value.str.len+1, (void **)&pce) == FAILURE) { + if (zend_lookup_class(lcname, Z_STRLEN_PP(class_name), &pce TSRMLS_CC) == FAILURE) { efree(lcname); RETURN_FALSE; } else { @@ -713,7 +713,8 @@ ZEND_FUNCTION(get_class_methods) } else if (Z_TYPE_PP(class) == IS_STRING) { SEPARATE_ZVAL(class); zend_str_tolower(Z_STRVAL_PP(class), Z_STRLEN_PP(class)); - if(zend_hash_find(EG(class_table), Z_STRVAL_PP(class), Z_STRLEN_PP(class)+1, (void **)&pce) == SUCCESS) { + + if (zend_lookup_class(Z_STRVAL_PP(class), Z_STRLEN_PP(class), &pce TSRMLS_CC) == SUCCESS) { ce = *pce; } } diff --git a/Zend/zend_mm.h b/Zend/zend_mm.h index a25ad5f1ec..988015b199 100644 --- a/Zend/zend_mm.h +++ b/Zend/zend_mm.h @@ -25,7 +25,7 @@ #include "zend_types.h" /* Define this to enable Zend MM */ -#undef ZEND_MM +#define ZEND_MM /* mm block type */ typedef struct _zend_mm_block { |