]> granicus.if.org Git - php/commitdiff
Reverted Gopal's patch that allowed plugable interned string check
authorDmitry Stogov <dmitry@php.net>
Thu, 28 Jul 2011 12:01:42 +0000 (12:01 +0000)
committerDmitry Stogov <dmitry@php.net>
Thu, 28 Jul 2011 12:01:42 +0000 (12:01 +0000)
1. It introduced a significant slowdown
2. It didn't fix the real problem in APC (I'm goint to commit the fix)

Zend/zend_string.c
Zend/zend_string.h

index 77b165ab202479ab8f4969eebc5adca31d6f16d8..949c19158247083150f505feffad3732e0702ec4 100644 (file)
 #endif
 
 ZEND_API const char *(*zend_new_interned_string)(const char *str, int len, int free_src TSRMLS_DC);
-ZEND_API zend_bool (*zend_is_interned_string)(const char *str TSRMLS_DC);
 ZEND_API void (*zend_interned_strings_snapshot)(TSRMLS_D);
 ZEND_API void (*zend_interned_strings_restore)(TSRMLS_D);
 
 static const char *zend_new_interned_string_int(const char *str, int len, int free_src TSRMLS_DC);
-static zend_bool zend_is_interned_string_int(const char *str TSRMLS_DC);
 static void zend_interned_strings_snapshot_int(TSRMLS_D);
 static void zend_interned_strings_restore_int(TSRMLS_D);
 
@@ -66,7 +64,6 @@ void zend_interned_strings_init(TSRMLS_D)
 #endif
 
        zend_new_interned_string = zend_new_interned_string_int;
-       zend_is_interned_string = zend_is_interned_string_int;
        zend_interned_strings_snapshot = zend_interned_strings_snapshot_int;
        zend_interned_strings_restore = zend_interned_strings_restore_int;
 }
@@ -180,11 +177,6 @@ static const char *zend_new_interned_string_int(const char *arKey, int nKeyLengt
 #endif
 }
 
-static zend_bool zend_is_interned_string_int(const char *s TSRMLS_DC)
-{
-       return (((s) >= CG(interned_strings_start)) && ((s) < CG(interned_strings_end)));
-}
-
 static void zend_interned_strings_snapshot_int(TSRMLS_D)
 {
        CG(interned_strings_snapshot_top) = CG(interned_strings_top);
index 5dcc950fafa0d9643114f96834b1d61a18ae5c15..a130fbcc383864053809d9446fc06fbde852151f 100644 (file)
@@ -24,7 +24,6 @@
 #include "zend.h"
 
 ZEND_API extern const char *(*zend_new_interned_string)(const char *str, int len, int free_src TSRMLS_DC);
-ZEND_API extern zend_bool (*zend_is_interned_string)(const char *str TSRMLS_DC);
 ZEND_API extern void (*zend_interned_strings_snapshot)(TSRMLS_D);
 ZEND_API extern void (*zend_interned_strings_restore)(TSRMLS_D);
 
@@ -34,7 +33,7 @@ void zend_interned_strings_dtor(TSRMLS_D);
 #ifndef ZTS
 
 #define IS_INTERNED(s) \
-       (zend_is_interned_string ? zend_is_interned_string((s) TSRMLS_CC) : 0)
+       (((s) >= CG(interned_strings_start)) && ((s) < CG(interned_strings_end)))
 
 #else