]> granicus.if.org Git - php/commitdiff
Intern auto global name strings in first place
authorDmitry Stogov <dmitry@zend.com>
Wed, 29 Nov 2017 14:10:51 +0000 (17:10 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 29 Nov 2017 14:10:51 +0000 (17:10 +0300)
Zend/zend.c
Zend/zend_compile.c
ext/session/session.c
main/php_variables.c

index d2734d98039247269abf8128b3ac0de7515efe68..34b5e7416da00950e7fba55a5c42542157218d2f 100644 (file)
@@ -866,7 +866,7 @@ int zend_startup(zend_utility_functions *utility_functions, char **extensions) /
        zend_interned_strings_init();
        zend_startup_builtin_functions();
        zend_register_standard_constants();
-       zend_register_auto_global(zend_string_init("GLOBALS", sizeof("GLOBALS") - 1, 1), 1, php_auto_globals_create_globals);
+       zend_register_auto_global(zend_string_init_interned("GLOBALS", sizeof("GLOBALS") - 1, 1), 1, php_auto_globals_create_globals);
 
 #ifndef ZTS
        zend_init_rsrc_plist();
index d4ec431f669b1d3561ac00131730f039a39ed7c8..da86c0c1d8764dcb34f53546d9ce139380a452df 100644 (file)
@@ -1664,13 +1664,12 @@ int zend_register_auto_global(zend_string *name, zend_bool jit, zend_auto_global
        zend_auto_global auto_global;
        int retval;
 
-       auto_global.name = zend_new_interned_string(name);
+       auto_global.name = name;
        auto_global.auto_global_callback = auto_global_callback;
        auto_global.jit = jit;
 
        retval = zend_hash_add_mem(CG(auto_globals), auto_global.name, &auto_global, sizeof(zend_auto_global)) != NULL ? SUCCESS : FAILURE;
 
-       zend_string_release(name);
        return retval;
 }
 /* }}} */
index 3fa1b7a0265998ba08ab23d1868abbd2a7183e24..fc666fc655a2a8ba70ab1f0c740e01376bd6acee 100644 (file)
@@ -2849,7 +2849,7 @@ static PHP_MINIT_FUNCTION(session) /* {{{ */
 {
        zend_class_entry ce;
 
-       zend_register_auto_global(zend_string_init("_SESSION", sizeof("_SESSION") - 1, 1), 0, NULL);
+       zend_register_auto_global(zend_string_init_interned("_SESSION", sizeof("_SESSION") - 1, 1), 0, NULL);
 
        my_module_number = module_number;
        PS(module_number) = module_number;
index 6d0970c85fc6007b47d26d2f3554e8bc0dac034d..a23186ce45b09f892746d3647dbc06312215aadd 100644 (file)
@@ -871,13 +871,13 @@ static zend_bool php_auto_globals_create_request(zend_string *name)
 
 void php_startup_auto_globals(void)
 {
-       zend_register_auto_global(zend_string_init("_GET", sizeof("_GET")-1, 1), 0, php_auto_globals_create_get);
-       zend_register_auto_global(zend_string_init("_POST", sizeof("_POST")-1, 1), 0, php_auto_globals_create_post);
-       zend_register_auto_global(zend_string_init("_COOKIE", sizeof("_COOKIE")-1, 1), 0, php_auto_globals_create_cookie);
-       zend_register_auto_global(zend_string_init("_SERVER", sizeof("_SERVER")-1, 1), PG(auto_globals_jit), php_auto_globals_create_server);
-       zend_register_auto_global(zend_string_init("_ENV", sizeof("_ENV")-1, 1), PG(auto_globals_jit), php_auto_globals_create_env);
-       zend_register_auto_global(zend_string_init("_REQUEST", sizeof("_REQUEST")-1, 1), PG(auto_globals_jit), php_auto_globals_create_request);
-       zend_register_auto_global(zend_string_init("_FILES", sizeof("_FILES")-1, 1), 0, php_auto_globals_create_files);
+       zend_register_auto_global(zend_string_init_interned("_GET", sizeof("_GET")-1, 1), 0, php_auto_globals_create_get);
+       zend_register_auto_global(zend_string_init_interned("_POST", sizeof("_POST")-1, 1), 0, php_auto_globals_create_post);
+       zend_register_auto_global(zend_string_init_interned("_COOKIE", sizeof("_COOKIE")-1, 1), 0, php_auto_globals_create_cookie);
+       zend_register_auto_global(zend_string_init_interned("_SERVER", sizeof("_SERVER")-1, 1), PG(auto_globals_jit), php_auto_globals_create_server);
+       zend_register_auto_global(zend_string_init_interned("_ENV", sizeof("_ENV")-1, 1), PG(auto_globals_jit), php_auto_globals_create_env);
+       zend_register_auto_global(zend_string_init_interned("_REQUEST", sizeof("_REQUEST")-1, 1), PG(auto_globals_jit), php_auto_globals_create_request);
+       zend_register_auto_global(zend_string_init_interned("_FILES", sizeof("_FILES")-1, 1), 0, php_auto_globals_create_files);
 }
 
 /*