Skip to content

Commit a7a3e71

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 b4eeb9d commit a7a3e71

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
@@ -151,6 +151,7 @@ libpqrcv_identify_system(TimeLineID *primary_tli)
151151
GetSystemIdentifier());
152152
if (strcmp(primary_sysid, standby_sysid) != 0)
153153
{
154+
primary_sysid = pstrdup(primary_sysid);
154155
PQclear(res);
155156
ereport(ERROR,
156157
(errmsg("database system identifier differs between the primary and standby"),

0 commit comments

Comments
 (0)