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