From: Andrey Hristov Date: Thu, 14 Feb 2008 15:20:49 +0000 (+0000) Subject: Another fix X-Git-Tag: RELEASE_1_3_1~45 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=28e7d996dfb2b7ee248286d1d245066b1f4788b7;p=php Another fix --- diff --git a/ext/mysqlnd/mysqlnd.h b/ext/mysqlnd/mysqlnd.h index ff81adabfe..71dee8faf9 100644 --- a/ext/mysqlnd/mysqlnd.h +++ b/ext/mysqlnd/mysqlnd.h @@ -346,7 +346,7 @@ ZEND_BEGIN_MODULE_GLOBALS(mysqlnd) MYSQLND_DEBUG *dbg; /* The DBG object */ long net_cmd_buffer_size; long net_read_buffer_size; -#ifdef ZTS +#ifdef MYSQLND_THREADED THREAD_T thread_id; #endif ZEND_END_MODULE_GLOBALS(mysqlnd) diff --git a/ext/mysqlnd/mysqlnd_debug.c b/ext/mysqlnd/mysqlnd_debug.c index 6a7f0cbdc2..a6b0ebaa71 100644 --- a/ext/mysqlnd/mysqlnd_debug.c +++ b/ext/mysqlnd/mysqlnd_debug.c @@ -95,7 +95,7 @@ MYSQLND_METHOD(mysqlnd_debug, log)(MYSQLND_DEBUG * self, line_buffer[6], level_buffer[7]; MYSQLND_ZTS(self); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { return PASS; /* don't trace background threads */ } @@ -201,7 +201,7 @@ MYSQLND_METHOD(mysqlnd_debug, log_va)(MYSQLND_DEBUG *self, line_buffer[6], level_buffer[7]; MYSQLND_ZTS(self); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { return PASS; /* don't trace background threads */ } @@ -307,7 +307,7 @@ MYSQLND_METHOD(mysqlnd_debug, func_enter)(MYSQLND_DEBUG * self, if ((self->flags & MYSQLND_DEBUG_DUMP_TRACE) == 0 || self->file_name == NULL) { return FALSE; } -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { return FALSE; /* don't trace background threads */ } @@ -354,7 +354,7 @@ MYSQLND_METHOD(mysqlnd_debug, func_leave)(MYSQLND_DEBUG * self, unsigned int lin if ((self->flags & MYSQLND_DEBUG_DUMP_TRACE) == 0 || self->file_name == NULL) { return PASS; } -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { return PASS; /* don't trace background threads */ } @@ -667,7 +667,7 @@ void * _mysqlnd_emalloc(size_t size MYSQLND_MEM_D) { void *ret; DBG_ENTER(mysqlnd_emalloc_name); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { DBG_RETURN(_mysqlnd_pemalloc(size, 1 TSRMLS_CC ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)); } @@ -720,7 +720,7 @@ void * _mysqlnd_ecalloc(uint nmemb, size_t size MYSQLND_MEM_D) { void *ret; DBG_ENTER(mysqlnd_ecalloc_name); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { DBG_RETURN(_mysqlnd_pecalloc(nmemb, size, 1 TSRMLS_CC ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)); } @@ -773,7 +773,7 @@ void * _mysqlnd_erealloc(void *ptr, size_t new_size MYSQLND_MEM_D) { void *ret; DBG_ENTER(mysqlnd_erealloc_name); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { DBG_RETURN(_mysqlnd_perealloc(ptr, new_size, 1 TSRMLS_CC ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)); } @@ -827,7 +827,7 @@ void * _mysqlnd_perealloc(void *ptr, size_t new_size, zend_bool persistent MYSQL void _mysqlnd_efree(void *ptr MYSQLND_MEM_D) { DBG_ENTER(mysqlnd_efree_name); -#ifdef ZTS +#ifdef MYSQLND_THREADED if (MYSQLND_G(thread_id) != tsrm_thread_id()) { DBG_RETURN(_mysqlnd_pefree(ptr, 1 TSRMLS_CC ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)); } diff --git a/ext/mysqlnd/php_mysqlnd.c b/ext/mysqlnd/php_mysqlnd.c index a4b7b4f30d..9065bbc68d 100644 --- a/ext/mysqlnd/php_mysqlnd.c +++ b/ext/mysqlnd/php_mysqlnd.c @@ -178,11 +178,12 @@ static PHP_MSHUTDOWN_FUNCTION(mysqlnd) /* }}} */ -#ifdef PHP_DEBUG +#if defined(PHP_DEBUG) || defined(MYSQLND_THREADED) /* {{{ PHP_RINIT_FUNCTION */ static PHP_RINIT_FUNCTION(mysqlnd) { +#if defined(PHP_DEBUG) if (MYSQLND_G(debug)) { MYSQLND_DEBUG *dbg = mysqlnd_debug_init(TSRMLS_C); if (!dbg) { @@ -190,8 +191,11 @@ static PHP_RINIT_FUNCTION(mysqlnd) } dbg->m->set_mode(dbg, MYSQLND_G(debug)); MYSQLND_G(dbg) = dbg; - MYSQLND_G(thread_id) = tsrm_thread_id(); } +#endif +#ifdef MYSQLND_THREADED + MYSQLND_G(thread_id) = tsrm_thread_id(); +#endif return SUCCESS; } /* }}} */ @@ -222,11 +226,14 @@ zend_module_entry mysqlnd_module_entry = { mysqlnd_functions, PHP_MINIT(mysqlnd), PHP_MSHUTDOWN(mysqlnd), -#ifdef PHP_DEBUG +#ifdef PHP_DEBUG || defined(MYSQLND_THREADED) PHP_RINIT(mysqlnd), - PHP_RSHUTDOWN(mysqlnd), #else NULL, +#endif +#ifdef PHP_DEBUG + PHP_RSHUTDOWN(mysqlnd), +#else NULL, #endif PHP_MINFO(mysqlnd),