summaryrefslogtreecommitdiff
path: root/sapi
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2019-03-12 17:35:50 +0300
committerDmitry Stogov <dmitry@zend.com>2019-03-12 17:35:50 +0300
commit04b67bac32e5fbc0942a1e15405fa1ca7f0438fe (patch)
tree2c302e1a5f3389a813955f2cecd75e1b635e485a /sapi
parent7139c381f133eff38e1fcebfa29f35119c8648f4 (diff)
downloadphp-git-04b67bac32e5fbc0942a1e15405fa1ca7f0438fe.tar.gz
Avoid reinitailization of ZTS cache pointer. Initialize it once in TSRM.c
Diffstat (limited to 'sapi')
-rw-r--r--sapi/apache2handler/sapi_apache2.c4
-rw-r--r--sapi/cgi/cgi_main.c4
-rw-r--r--sapi/cli/php_cli.c2
-rw-r--r--sapi/cli/php_cli_server.c3
-rw-r--r--sapi/embed/php_embed.c2
-rw-r--r--sapi/phpdbg/phpdbg.c2
6 files changed, 13 insertions, 4 deletions
diff --git a/sapi/apache2handler/sapi_apache2.c b/sapi/apache2handler/sapi_apache2.c
index 1aeccb17c9..81198af562 100644
--- a/sapi/apache2handler/sapi_apache2.c
+++ b/sapi/apache2handler/sapi_apache2.c
@@ -476,7 +476,9 @@ php_apache_server_startup(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp
#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
zend_signal_startup();
@@ -574,7 +576,9 @@ static int php_handler(request_rec *r)
#ifdef ZTS
/* initial resource fetch */
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
#define PHPAP_INI_OFF php_apache_ini_dtor(r, parent_req);
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index bc157ec70e..84d2213cd6 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -1532,7 +1532,7 @@ PHP_INI_END()
*/
static void php_cgi_globals_ctor(php_cgi_globals_struct *php_cgi_globals)
{
-#ifdef ZTS
+#if defined(ZTS) && defined(PHP_WIN32)
ZEND_TSRMLS_CACHE_UPDATE();
#endif
php_cgi_globals->rfc2616_headers = 0;
@@ -1793,7 +1793,9 @@ int main(int argc, char *argv[])
#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
zend_signal_startup();
diff --git a/sapi/cli/php_cli.c b/sapi/cli/php_cli.c
index 51e0a03fe8..2cc83a5d6d 100644
--- a/sapi/cli/php_cli.c
+++ b/sapi/cli/php_cli.c
@@ -1248,7 +1248,9 @@ int main(int argc, char *argv[])
#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
zend_signal_startup();
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c
index 3588a902a0..544c1e14cc 100644
--- a/sapi/cli/php_cli_server.c
+++ b/sapi/cli/php_cli_server.c
@@ -1296,9 +1296,6 @@ out:
static int php_cli_server_request_ctor(php_cli_server_request *req) /* {{{ */
{
-#ifdef ZTS
-ZEND_TSRMLS_CACHE_UPDATE();
-#endif
req->protocol_version = 0;
req->request_uri = NULL;
req->request_uri_len = 0;
diff --git a/sapi/embed/php_embed.c b/sapi/embed/php_embed.c
index 826e9bd05e..4221e6e0eb 100644
--- a/sapi/embed/php_embed.c
+++ b/sapi/embed/php_embed.c
@@ -173,7 +173,9 @@ EMBED_SAPI_API int php_embed_init(int argc, char **argv)
#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
zend_signal_startup();
diff --git a/sapi/phpdbg/phpdbg.c b/sapi/phpdbg/phpdbg.c
index 4834f8b5cf..11e1fcf574 100644
--- a/sapi/phpdbg/phpdbg.c
+++ b/sapi/phpdbg/phpdbg.c
@@ -1418,7 +1418,9 @@ phpdbg_main:
#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
(void)ts_resource(0);
+# ifdef PHP_WIN32
ZEND_TSRMLS_CACHE_UPDATE();
+# endif
#endif
zend_signal_startup();