summaryrefslogtreecommitdiff
path: root/ext/pgsql/pgsql.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-04-10 10:38:52 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-04-10 10:38:52 +0200
commitd50dcbe659e6d5cbe1a7516957431b299e45465c (patch)
tree4834b1884fe086b242be6a55ccb5880a6300d516 /ext/pgsql/pgsql.c
parentce5e5b0aa360b001778ff3c8ae21822002fa2c53 (diff)
parented1df9d135422bbb44fcd291ad7954358a6f87ed (diff)
downloadphp-git-d50dcbe659e6d5cbe1a7516957431b299e45465c.tar.gz
Merge branch 'PHP-7.3' into PHP-7.4
Diffstat (limited to 'ext/pgsql/pgsql.c')
-rw-r--r--ext/pgsql/pgsql.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c
index 03669de088..ee6c952fec 100644
--- a/ext/pgsql/pgsql.c
+++ b/ext/pgsql/pgsql.c
@@ -88,7 +88,7 @@
#define PQ_SETNONBLOCKING(pg_link, flag) 0
#endif
-#define CHECK_DEFAULT_LINK(x) if ((x) == NULL) { php_error_docref(NULL, E_WARNING, "No PostgreSQL link opened yet"); }
+#define CHECK_DEFAULT_LINK(x) if ((x) == NULL) { php_error_docref(NULL, E_WARNING, "No PostgreSQL link opened yet"); RETURN_FALSE; }
#define FETCH_DEFAULT_LINK() PGG(default_link)
#ifndef HAVE_PQFREEMEM
@@ -1566,13 +1566,15 @@ PHP_FUNCTION(pg_close)
return;
}
- if (pgsql_link) {
- link = Z_RES_P(pgsql_link);
- } else {
- link = FETCH_DEFAULT_LINK();
+ if (!pgsql_link) {
+ link = PGG(default_link);
CHECK_DEFAULT_LINK(link);
+ zend_list_delete(link);
+ PGG(default_link) = NULL;
+ RETURN_TRUE;
}
+ link = Z_RES_P(pgsql_link);
if (zend_fetch_resource2(link, "PostgreSQL link", le_link, le_plink) == NULL) {
RETURN_FALSE;
}