Browse Source

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

PHP-4.0.6
Romolo Manfredini 25 years ago
parent
commit
99e5dfd00e
  1. 10
      ext/pgsql/pgsql.c

10
ext/pgsql/pgsql.c

@ -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;
}

Loading…
Cancel
Save