projects
/
users
/
c2main
/
postgres.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9f3cf8a
)
Fix connection leak in dblink when dblink_connect() or dblink_connect_u()
author
Itagaki Takahiro
<
[email protected]
>
Wed, 9 Jun 2010 01:00:50 +0000
(
01:00
+0000)
committer
Itagaki Takahiro
<
[email protected]
>
Wed, 9 Jun 2010 01:00:50 +0000
(
01:00
+0000)
end with "duplicate connection name" errors.
Backported to release 7.4.
contrib/dblink/dblink.c
patch
|
blob
|
blame
|
history
diff --git
a/contrib/dblink/dblink.c
b/contrib/dblink/dblink.c
index 18271b24f76ed73ad466abf8284b12f2f946af02..0bea6487ec3fa17fce196c01a0d4e2dc9c4dfce0 100644
(file)
--- a/
contrib/dblink/dblink.c
+++ b/
contrib/dblink/dblink.c
@@
-1980,9
+1980,14
@@
createNewConnection(const char *name, remoteConn * con)
errmsg("out of memory")));
if (found)
+ {
+ PQfinish(rconn->conn);
+ pfree(rconn);
+
ereport(ERROR,
(errcode(ERRCODE_DUPLICATE_OBJECT),
errmsg("duplicate connection name")));
+ }
hentry->rcon = con;
strncpy(hentry->name, name, NAMEDATALEN - 1);