]> granicus.if.org Git - php/commitdiff
use zend_string_equals_ci
authorXinchen Hui <laruence@php.net>
Fri, 29 Aug 2014 05:19:14 +0000 (13:19 +0800)
committerXinchen Hui <laruence@php.net>
Fri, 29 Aug 2014 05:19:14 +0000 (13:19 +0800)
Zend/zend_compile.c
Zend/zend_string.h

index ca0b242e14401a79fb263e5f703888d3ac4b15ab..92b26b200108077d1a94ad19302064c68b0638d8 100644 (file)
@@ -3051,14 +3051,11 @@ ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify
 
 uint32_t zend_get_class_fetch_type(zend_string *name) /* {{{ */ 
 {
-       if (name->len == sizeof("self") - 1 &&
-               !strncasecmp(name->val, "self", sizeof("self") - 1)) {
+       if (zend_string_equals_literal_ci(name, "self")) {
                return ZEND_FETCH_CLASS_SELF;
-       } else if (name->len == sizeof("parent") - 1 &&
-               !strncasecmp(name->val, "parent", sizeof("parent") - 1)) {
+       } else if (zend_string_equals_literal_ci(name, "parent")) {
                return ZEND_FETCH_CLASS_PARENT;
-       } else if (name->len == sizeof("static") - 1 &&
-               !strncasecmp(name->val, "static", sizeof("static") - 1)) {
+       } else if (zend_string_equals_literal_ci(name, "static")) {
                return ZEND_FETCH_CLASS_STATIC;
        } else {
                return ZEND_FETCH_CLASS_DEFAULT;
@@ -3253,10 +3250,6 @@ static inline zend_bool zend_string_equals_str_ci(zend_string *str1, zend_string
 }
 /* }}} */
 
-#define zend_string_equals_literal_ci(str, c) \
-       ((str)->len == sizeof(c) - 1 \
-        && !zend_binary_strcasecmp((str)->val, (str)->len, (c), sizeof(c) - 1))
-
 static void zend_adjust_for_fetch_type(zend_op *opline, uint32_t type) /* {{{ */ 
 {
        switch (type & BP_VAR_MASK) {
index 479e92069e80aa7ca95d324a4a67447d4332b417..a2b5fb932e89748befbe40857a5daf81732c5382 100644 (file)
@@ -214,6 +214,9 @@ static zend_always_inline zend_bool zend_string_equals(zend_string *s1, zend_str
        return s1 == s2 || (s1->len == s2->len && !memcmp(s1->val, s2->val, s1->len));
 }
 
+#define zend_string_equals_literal_ci(str, c) \
+       ((str)->len == sizeof(c) - 1 && !zend_binary_strcasecmp((str)->val, (str)->len, (c), sizeof(c) - 1))
+
 #define zend_string_equals_literal(str, literal) \
        ((str)->len == sizeof(literal)-1 && !memcmp((str)->val, literal, sizeof(literal) - 1))