diff options
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r-- | Zend/zend_API.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 575d9daaa4..f9a868ddda 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -1588,23 +1588,8 @@ zend_bool zend_is_callable(zval *callable, zend_bool syntax_only, char **callabl return 1; lcname = zend_str_tolower_dup(Z_STRVAL_P(callable), Z_STRLEN_P(callable)); - if (zend_hash_exists(EG(function_table), lcname, Z_STRLEN_P(callable)+1)) { + if (zend_hash_exists(EG(function_table), lcname, Z_STRLEN_P(callable)+1)) retval = 1; - } else { - char *func_pos; - if ((func_pos=strstr(lcname, "::"))) { - int lcclass_len = (int)(func_pos - lcname); - char *lcclass = estrndup(lcname, lcclass_len); - zend_class_entry **ce; - - if (zend_lookup_class(lcclass, lcclass_len, &ce TSRMLS_CC) == SUCCESS) { - int func_len = Z_STRLEN_P(callable) - lcclass_len - 2; - func_pos += 2; - retval = zend_hash_exists(&(*ce)->function_table, func_pos, func_len + 1) ? 1 : 0; - } - efree(lcclass); - } - } efree(lcname); break; |