diff options
-rw-r--r-- | ext/mysql/php_mysql.c | 12 | ||||
-rw-r--r-- | ext/mysql/php_mysql.h | 1 |
2 files changed, 10 insertions, 3 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index 2bf457035b..82509151df 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -173,7 +173,7 @@ function_entry mysql_functions[] = { }; zend_module_entry mysql_module_entry = { - "mysql", mysql_functions, PHP_MINIT(mysql), PHP_MSHUTDOWN(mysql), PHP_RINIT(mysql), NULL, + "mysql", mysql_functions, PHP_MINIT(mysql), PHP_MSHUTDOWN(mysql), PHP_RINIT(mysql), PHP_RSHUTDOWN(mysql), PHP_MINFO(mysql), STANDARD_MODULE_PROPERTIES }; @@ -323,11 +323,17 @@ PHP_RINIT_FUNCTION(mysql) MySG(default_link)=-1; MySG(num_links) = MySG(num_persistent); /* Reset connect error/errno on every request */ + MySG(connect_error) = NULL; + MySG(connect_errno)=0; + return SUCCESS; +} + + +PHP_RSHUTDOWN_FUNCTION(mysql) +{ if (MySG(connect_error)!=NULL) { efree(MySG(connect_error)); - MySG(connect_error)=NULL; } - MySG(connect_errno)=0; return SUCCESS; } diff --git a/ext/mysql/php_mysql.h b/ext/mysql/php_mysql.h index 8e3fb71870..aa2213963b 100644 --- a/ext/mysql/php_mysql.h +++ b/ext/mysql/php_mysql.h @@ -41,6 +41,7 @@ extern zend_module_entry mysql_module_entry; extern PHP_MINIT_FUNCTION(mysql); extern PHP_RINIT_FUNCTION(mysql); extern PHP_MSHUTDOWN_FUNCTION(mysql); +extern PHP_RSHUTDOWN_FUNCTION(mysql); PHP_MINFO_FUNCTION(mysql); PHP_FUNCTION(mysql_connect); |