pg_close was undefining default_conn even if a ref to it was still there.

This commit is contained in:
Romolo Manfredini 2001-03-26 08:00:43 +00:00
parent 5a0056842d
commit 99e5dfd00e

View File

@ -501,7 +501,8 @@ PHP_FUNCTION(pg_pconnect)
PHP_FUNCTION(pg_close)
{
zval **pgsql_link = NULL;
int id;
void *ptr;
int id, type;
PGconn *pgsql;
PGLS_FETCH();
@ -527,12 +528,15 @@ PHP_FUNCTION(pg_close)
if (id==-1) { /* explicit resource number */
zend_list_delete(Z_RESVAL_PP(pgsql_link));
ptr = zend_list_find(Z_RESVAL_PP(pgsql_link),&type);
if (ptr && (type==le_link || type==le_plink)) {
RETURN_TRUE;
}
}
if (id!=-1
|| (pgsql_link && Z_RESVAL_PP(pgsql_link)==PGG(default_link))) {
if (id!=-1)
zend_list_delete(PGG(default_link));
zend_list_delete(PGG(default_link));
PGG(default_link) = -1;
}