summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd.c
diff options
context:
space:
mode:
authorJohannes Schlüter <johannes@php.net>2008-10-01 19:47:17 +0000
committerJohannes Schlüter <johannes@php.net>2008-10-01 19:47:17 +0000
commit3c335a3b5e09235ea9058654f1924357bc879c62 (patch)
tree74c045467bc088abd66939b169e4cd9a02d2f1ba /ext/mysqlnd/mysqlnd.c
parent5db154d49ed909eddd935ef0632813559978ecb1 (diff)
downloadphp-git-3c335a3b5e09235ea9058654f1924357bc879c62.tar.gz
MFH: Handle failed connections right
Diffstat (limited to 'ext/mysqlnd/mysqlnd.c')
-rw-r--r--ext/mysqlnd/mysqlnd.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/ext/mysqlnd/mysqlnd.c b/ext/mysqlnd/mysqlnd.c
index a68808c357..828890e4a0 100644
--- a/ext/mysqlnd/mysqlnd.c
+++ b/ext/mysqlnd/mysqlnd.c
@@ -1261,10 +1261,12 @@ MYSQLND_METHOD(mysqlnd_conn, close)(MYSQLND * conn, enum_connection_close_type c
DBG_ENTER("mysqlnd_conn::close");
DBG_INF_FMT("conn=%llu", conn->thread_id);
- MYSQLND_INC_CONN_STATISTIC(&conn->stats, stat);
- MYSQLND_DEC_CONN_STATISTIC(&conn->stats, STAT_OPENED_CONNECTIONS);
- if (conn->persistent) {
- MYSQLND_DEC_CONN_STATISTIC(&conn->stats, STAT_OPENED_PERSISTENT_CONNECTIONS);
+ if (conn->state >= CONN_READY) {
+ MYSQLND_INC_CONN_STATISTIC(&conn->stats, stat);
+ MYSQLND_DEC_CONN_STATISTIC(&conn->stats, STAT_OPENED_CONNECTIONS);
+ if (conn->persistent) {
+ MYSQLND_DEC_CONN_STATISTIC(&conn->stats, STAT_OPENED_PERSISTENT_CONNECTIONS);
+ }
}
/*