Skip to content

Commit 17b04a1

Browse files
committed
Fix use of free in walsender error handling after a sysid mismatch.
Found via valgrind. The bug exists since the introduction of the walsender, so backpatch to 9.0. Andres Freund
1 parent 3a024c1 commit 17b04a1

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

src/backend/replication/libpqwalreceiver/libpqwalreceiver.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ libpqrcv_connect(char *conninfo, XLogRecPtr startpoint)
135135
GetSystemIdentifier());
136136
if (strcmp(primary_sysid, standby_sysid) != 0)
137137
{
138+
primary_sysid = pstrdup(primary_sysid);
138139
PQclear(res);
139140
ereport(ERROR,
140141
(errmsg("database system identifier differs between the primary and standby"),

0 commit comments

Comments
 (0)