diff options
Diffstat (limited to 'ext/mysqlnd')
| -rw-r--r-- | ext/mysqlnd/config.w32 | 2 | ||||
| -rw-r--r-- | ext/mysqlnd/config9.m4 | 2 | ||||
| -rw-r--r-- | ext/mysqlnd/mysqlnd.h | 5 | ||||
| -rw-r--r-- | ext/mysqlnd/mysqlnd_debug.c | 9 | ||||
| -rw-r--r-- | ext/mysqlnd/mysqlnd_debug.h | 3 | ||||
| -rw-r--r-- | ext/mysqlnd/mysqlnd_driver.c | 4 | ||||
| -rw-r--r-- | ext/mysqlnd/php_mysqlnd.c | 6 |
7 files changed, 14 insertions, 17 deletions
diff --git a/ext/mysqlnd/config.w32 b/ext/mysqlnd/config.w32 index b13a81530a..ff102310dd 100644 --- a/ext/mysqlnd/config.w32 +++ b/ext/mysqlnd/config.w32 @@ -25,7 +25,7 @@ if (PHP_MYSQLND != "no") { "mysqlnd_statistics.c " + "mysqlnd_wireprotocol.c " + "php_mysqlnd.c "; - EXTENSION("mysqlnd", mysqlnd_source, false); + EXTENSION("mysqlnd", mysqlnd_source, false, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); if ((((PHP_ZLIB=="no") && (CHECK_LIB("zlib_a.lib;zlib.lib", "mysqlnd", PHP_MYSQLND))) || (PHP_ZLIB_SHARED && CHECK_LIB("zlib.lib", "mysqlnd", PHP_MYSQLND)) || (PHP_ZLIB == "yes" && (!PHP_ZLIB_SHARED))) && diff --git a/ext/mysqlnd/config9.m4 b/ext/mysqlnd/config9.m4 index 1a0136d8db..756a325014 100644 --- a/ext/mysqlnd/config9.m4 +++ b/ext/mysqlnd/config9.m4 @@ -41,7 +41,7 @@ if test "$PHP_MYSQLND" != "no" || test "$PHP_MYSQLND_ENABLED" = "yes"; then fi mysqlnd_sources="$mysqlnd_base_sources $mysqlnd_ps_sources" - PHP_NEW_EXTENSION(mysqlnd, $mysqlnd_sources, $ext_shared) + PHP_NEW_EXTENSION(mysqlnd, $mysqlnd_sources, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) PHP_ADD_BUILD_DIR([ext/mysqlnd], 1) PHP_INSTALL_HEADERS([ext/mysqlnd/]) fi diff --git a/ext/mysqlnd/mysqlnd.h b/ext/mysqlnd/mysqlnd.h index aab977d24c..2e45740abb 100644 --- a/ext/mysqlnd/mysqlnd.h +++ b/ext/mysqlnd/mysqlnd.h @@ -288,7 +288,10 @@ ZEND_END_MODULE_GLOBALS(mysqlnd) PHPAPI ZEND_EXTERN_MODULE_GLOBALS(mysqlnd) #ifdef ZTS -#define MYSQLND_G(v) TSRMG(mysqlnd_globals_id, zend_mysqlnd_globals *, v) +#define MYSQLND_G(v) ZEND_TSRMG(mysqlnd_globals_id, zend_mysqlnd_globals *, v) +#ifdef COMPILE_DL_MYSQLND +ZEND_TSRMLS_CACHE_EXTERN; +#endif #else #define MYSQLND_G(v) (mysqlnd_globals.v) #endif diff --git a/ext/mysqlnd/mysqlnd_debug.c b/ext/mysqlnd/mysqlnd_debug.c index f1fde4efbb..c8f682b8e2 100644 --- a/ext/mysqlnd/mysqlnd_debug.c +++ b/ext/mysqlnd/mysqlnd_debug.c @@ -39,8 +39,6 @@ static const char * const mysqlnd_debug_empty_string = ""; static enum_func_status MYSQLND_METHOD(mysqlnd_debug, open)(MYSQLND_DEBUG * self, zend_bool reopen) { - MYSQLND_ZTS(self); - if (!self->file_name) { return FAIL; } @@ -67,7 +65,6 @@ MYSQLND_METHOD(mysqlnd_debug, log)(MYSQLND_DEBUG * self, unsigned int flags = self->flags; char pid_buffer[10], time_buffer[30], file_buffer[200], line_buffer[6], level_buffer[7]; - MYSQLND_ZTS(self); if (!self->stream && FAIL == self->m->open(self, FALSE)) { return FAIL; @@ -165,7 +162,6 @@ MYSQLND_METHOD(mysqlnd_debug, log_va)(MYSQLND_DEBUG *self, unsigned int flags = self->flags; char pid_buffer[10], time_buffer[30], file_buffer[200], line_buffer[6], level_buffer[7]; - MYSQLND_ZTS(self); if (!self->stream && FAIL == self->m->open(self, FALSE)) { return FAIL; @@ -436,7 +432,6 @@ MYSQLND_METHOD(mysqlnd_debug, func_leave)(MYSQLND_DEBUG * self, unsigned int lin static enum_func_status MYSQLND_METHOD(mysqlnd_debug, close)(MYSQLND_DEBUG * self) { - MYSQLND_ZTS(self); if (self->stream) { #ifndef MYSQLND_PROFILING_DISABLED if (!(self->flags & MYSQLND_DEBUG_FLUSH) && (self->flags & MYSQLND_DEBUG_PROFILE_CALLS)) { @@ -718,9 +713,7 @@ PHPAPI MYSQLND_DEBUG * mysqlnd_debug_init(const char * skip_functions[] TSRMLS_DC) { MYSQLND_DEBUG *ret = calloc(1, sizeof(MYSQLND_DEBUG)); -#ifdef ZTS - ret->TSRMLS_C = TSRMLS_C; -#endif + ret->nest_level_limit = 0; ret->pid = getpid(); zend_stack_init(&ret->call_stack, sizeof(char *)); diff --git a/ext/mysqlnd/mysqlnd_debug.h b/ext/mysqlnd/mysqlnd_debug.h index bb4ff3e895..e8dfeb6c4a 100644 --- a/ext/mysqlnd/mysqlnd_debug.h +++ b/ext/mysqlnd/mysqlnd_debug.h @@ -45,9 +45,6 @@ struct st_mysqlnd_debug_methods struct st_mysqlnd_debug { php_stream *stream; -#ifdef ZTS - TSRMLS_D; -#endif unsigned int flags; unsigned int nest_level_limit; int pid; diff --git a/ext/mysqlnd/mysqlnd_driver.c b/ext/mysqlnd/mysqlnd_driver.c index e67d023edb..a35474b9e6 100644 --- a/ext/mysqlnd/mysqlnd_driver.c +++ b/ext/mysqlnd/mysqlnd_driver.c @@ -99,9 +99,7 @@ static void mysqlnd_error_list_pdtor(void * pDest) { MYSQLND_ERROR_LIST_ELEMENT * element = (MYSQLND_ERROR_LIST_ELEMENT *) pDest; -#ifdef ZTS - TSRMLS_FETCH(); -#endif + DBG_ENTER("mysqlnd_error_list_pdtor"); if (element->error) { mnd_pefree(element->error, TRUE); diff --git a/ext/mysqlnd/php_mysqlnd.c b/ext/mysqlnd/php_mysqlnd.c index a16018f6ba..71512e8d46 100644 --- a/ext/mysqlnd/php_mysqlnd.c +++ b/ext/mysqlnd/php_mysqlnd.c @@ -179,6 +179,9 @@ PHPAPI ZEND_DECLARE_MODULE_GLOBALS(mysqlnd) */ static PHP_GINIT_FUNCTION(mysqlnd) { +#if defined(COMPILE_DL_MYSQLND) && defined(ZTS) + ZEND_TSRMLS_CACHE_UPDATE; +#endif mysqlnd_globals->collect_statistics = TRUE; mysqlnd_globals->collect_memory_statistics = FALSE; mysqlnd_globals->debug = NULL; /* The actual string */ @@ -357,6 +360,9 @@ zend_module_entry mysqlnd_module_entry = { /* {{{ COMPILE_DL_MYSQLND */ #ifdef COMPILE_DL_MYSQLND +#ifdef ZTS +ZEND_TSRMLS_CACHE_DEFINE; +#endif ZEND_GET_MODULE(mysqlnd) #endif /* }}} */ |
