Browse Source

Fixed crash in ZTS mode due to ini values not being initialized

experimental/first_unicode_implementation
Ilia Alshanetsky 16 years ago
parent
commit
0f437c3a09
  1. 16
      ext/pdo_mysql/pdo_mysql.c
  2. 2
      ext/pdo_mysql/php_pdo_mysql_int.h

16
ext/pdo_mysql/pdo_mysql.c

@ -115,12 +115,11 @@ static PHP_MINFO_FUNCTION(pdo_mysql)
/* }}} */ /* }}} */
#if PDO_USE_MYSQLND
#if PDO_USE_MYSQLND && PDO_DBG_ENABLED
/* {{{ PHP_RINIT_FUNCTION /* {{{ PHP_RINIT_FUNCTION
*/ */
static PHP_RINIT_FUNCTION(pdo_mysql) static PHP_RINIT_FUNCTION(pdo_mysql)
{ {
#if PDO_DBG_ENABLED
if (PDO_MYSQL_G(debug)) { if (PDO_MYSQL_G(debug)) {
MYSQLND_DEBUG *dbg = mysqlnd_debug_init(mysqlnd_debug_std_no_trace_funcs TSRMLS_CC); MYSQLND_DEBUG *dbg = mysqlnd_debug_init(mysqlnd_debug_std_no_trace_funcs TSRMLS_CC);
if (!dbg) { if (!dbg) {
@ -129,18 +128,15 @@ static PHP_RINIT_FUNCTION(pdo_mysql)
dbg->m->set_mode(dbg, PDO_MYSQL_G(debug)); dbg->m->set_mode(dbg, PDO_MYSQL_G(debug));
PDO_MYSQL_G(dbg) = dbg; PDO_MYSQL_G(dbg) = dbg;
} }
#endif
return SUCCESS; return SUCCESS;
} }
/* }}} */ /* }}} */
/* {{{ PHP_RSHUTDOWN_FUNCTION /* {{{ PHP_RSHUTDOWN_FUNCTION
*/ */
static PHP_RSHUTDOWN_FUNCTION(pdo_mysql) static PHP_RSHUTDOWN_FUNCTION(pdo_mysql)
{ {
#if PDO_DBG_ENABLED
MYSQLND_DEBUG *dbg = PDO_MYSQL_G(dbg); MYSQLND_DEBUG *dbg = PDO_MYSQL_G(dbg);
PDO_DBG_ENTER("RSHUTDOWN"); PDO_DBG_ENTER("RSHUTDOWN");
if (dbg) { if (dbg) {
@ -148,11 +144,11 @@ static PHP_RSHUTDOWN_FUNCTION(pdo_mysql)
dbg->m->free_handle(dbg); dbg->m->free_handle(dbg);
PDO_MYSQL_G(dbg) = NULL; PDO_MYSQL_G(dbg) = NULL;
} }
#endif
return SUCCESS; return SUCCESS;
} }
/* }}} */ /* }}} */
#endif
/* {{{ PHP_GINIT_FUNCTION /* {{{ PHP_GINIT_FUNCTION
*/ */
@ -167,8 +163,6 @@ static PHP_GINIT_FUNCTION(pdo_mysql)
#endif #endif
} }
/* }}} */ /* }}} */
#endif
/* {{{ pdo_mysql_functions[] */ /* {{{ pdo_mysql_functions[] */
const zend_function_entry pdo_mysql_functions[] = { const zend_function_entry pdo_mysql_functions[] = {
@ -205,15 +199,11 @@ zend_module_entry pdo_mysql_module_entry = {
#endif #endif
PHP_MINFO(pdo_mysql), PHP_MINFO(pdo_mysql),
"1.0.2", "1.0.2",
#if PDO_USE_MYSQLND
PHP_MODULE_GLOBALS(pdo_mysql), PHP_MODULE_GLOBALS(pdo_mysql),
PHP_GINIT(pdo_mysql), PHP_GINIT(pdo_mysql),
NULL, NULL,
NULL, NULL,
STANDARD_MODULE_PROPERTIES_EX STANDARD_MODULE_PROPERTIES_EX
#else
STANDARD_MODULE_PROPERTIES
#endif
}; };
/* }}} */ /* }}} */

2
ext/pdo_mysql/php_pdo_mysql_int.h

@ -77,8 +77,6 @@ ZEND_BEGIN_MODULE_GLOBALS(pdo_mysql)
#endif #endif
ZEND_END_MODULE_GLOBALS(pdo_mysql) ZEND_END_MODULE_GLOBALS(pdo_mysql)
ZEND_EXTERN_MODULE_GLOBALS(pdo_mysql);
#ifdef ZTS #ifdef ZTS
#define PDO_MYSQL_G(v) TSRMG(pdo_mysql_globals_id, zend_pdo_mysql_globals *, v) #define PDO_MYSQL_G(v) TSRMG(pdo_mysql_globals_id, zend_pdo_mysql_globals *, v)
#else #else

Loading…
Cancel
Save