diff options
-rw-r--r-- | ext/sockets/config.m4 | 2 | ||||
-rw-r--r-- | ext/sockets/config.w32 | 2 | ||||
-rw-r--r-- | ext/sockets/php_sockets.h | 2 | ||||
-rw-r--r-- | ext/sockets/sockets.c | 9 |
4 files changed, 12 insertions, 3 deletions
diff --git a/ext/sockets/config.m4 b/ext/sockets/config.m4 index a5a63dfb61..cea27000cf 100644 --- a/ext/sockets/config.m4 +++ b/ext/sockets/config.m4 @@ -56,6 +56,6 @@ if test "$PHP_SOCKETS" != "no"; then AC_DEFINE(HAVE_AI_V4MAPPED,1,[Whether you have AI_V4MAPPED]) fi - PHP_NEW_EXTENSION([sockets], [sockets.c multicast.c conversions.c sockaddr_conv.c sendrecvmsg.c], [$ext_shared]) + PHP_NEW_EXTENSION([sockets], [sockets.c multicast.c conversions.c sockaddr_conv.c sendrecvmsg.c], [$ext_shared],, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) PHP_INSTALL_HEADERS([ext/sockets/], [php_sockets.h]) fi diff --git a/ext/sockets/config.w32 b/ext/sockets/config.w32 index aeaa8ed425..d3455b05dd 100644 --- a/ext/sockets/config.w32 +++ b/ext/sockets/config.w32 @@ -7,7 +7,7 @@ if (PHP_SOCKETS != "no") { if (CHECK_LIB("ws2_32.lib", "sockets", PHP_SOCKETS) && CHECK_LIB("Iphlpapi.lib", "sockets", PHP_SOCKETS) && CHECK_HEADER_ADD_INCLUDE("winsock.h", "CFLAGS_SOCKETS")) { - EXTENSION('sockets', 'sockets.c multicast.c conversions.c sockaddr_conv.c sendrecvmsg.c'); + EXTENSION('sockets', 'sockets.c multicast.c conversions.c sockaddr_conv.c sendrecvmsg.c', PHP_SOCKETS_SHARED, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); AC_DEFINE('HAVE_SOCKETS', 1); PHP_INSTALL_HEADERS("ext/sockets", "php_sockets.h"); } else { diff --git a/ext/sockets/php_sockets.h b/ext/sockets/php_sockets.h index b1ee5798c9..8a25f960a3 100644 --- a/ext/sockets/php_sockets.h +++ b/ext/sockets/php_sockets.h @@ -89,7 +89,7 @@ ZEND_BEGIN_MODULE_GLOBALS(sockets) ZEND_END_MODULE_GLOBALS(sockets) #ifdef ZTS -#define SOCKETS_G(v) TSRMG(sockets_globals_id, zend_sockets_globals *, v) +#define SOCKETS_G(v) ZEND_TSRMG(sockets_globals_id, zend_sockets_globals *, v) #else #define SOCKETS_G(v) (sockets_globals.v) #endif diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index 0dab51bed6..263b8c45f7 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -370,6 +370,9 @@ zend_module_entry sockets_module_entry = { #ifdef COMPILE_DL_SOCKETS +#ifdef ZTS + ZEND_TSRMLS_CACHE_DEFINE; +#endif ZEND_GET_MODULE(sockets) #endif @@ -600,6 +603,9 @@ char *sockets_strerror(int error TSRMLS_DC) /* {{{ */ /* {{{ PHP_GINIT_FUNCTION */ static PHP_GINIT_FUNCTION(sockets) { +#if defined(COMPILE_DL_SOCKETS) && defined(ZTS) + ZEND_TSRMLS_CACHE_UPDATE; +#endif sockets_globals->last_error = 0; sockets_globals->strerror_buf = NULL; } @@ -609,6 +615,9 @@ static PHP_GINIT_FUNCTION(sockets) */ static PHP_MINIT_FUNCTION(sockets) { +#if defined(COMPILE_DL_SOCKETS) && defined(ZTS) + ZEND_TSRMLS_CACHE_UPDATE; +#endif le_socket = zend_register_list_destructors_ex(php_destroy_socket, NULL, le_socket_name, module_number); REGISTER_LONG_CONSTANT("AF_UNIX", AF_UNIX, CONST_CS | CONST_PERSISTENT); |