summaryrefslogtreecommitdiff
path: root/ext/msql/php_msql.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/msql/php_msql.c')
-rw-r--r--ext/msql/php_msql.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/msql/php_msql.c b/ext/msql/php_msql.c
index 8b09ab6fc8..90c8ff37ed 100644
--- a/ext/msql/php_msql.c
+++ b/ext/msql/php_msql.c
@@ -404,12 +404,16 @@ DLEXPORT PHP_FUNCTION(msql_close)
ZEND_FETCH_RESOURCE2(msql, int, &msql_link, id, "mSQL-Link", msql_globals.le_link, msql_globals.le_plink);
- zend_list_delete(Z_RESVAL_P(msql_link));
- if (Z_RESVAL_P(mysql_link)==msql_globals.default_link) {
+ if (id==-1) { /* explicit resource number */
+ zend_list_delete(Z_RESVAL_P(msql_link));
+ }
+
+ if (id!=-1
+ || (msql_link && Z_RESVAL_P(msql_link)==msql_globals.default_link)) {
zend_list_delete(msql_globals.default_link);
+ msql_globals.default_link = -1;
}
- zend_list_delete(id);
RETURN_TRUE;
}
/* }}} */