@@ -251,13 +251,17 @@ RunIdentifySystem(PGconn *conn, char **sysid, TimeLineID *starttli,
251
251
{
252
252
fprintf (stderr , _ ("%s: could not send replication command \"%s\": %s" ),
253
253
progname , "IDENTIFY_SYSTEM" , PQerrorMessage (conn ));
254
+
255
+ PQclear (res );
254
256
return false;
255
257
}
256
258
if (PQntuples (res ) != 1 || PQnfields (res ) < 3 )
257
259
{
258
260
fprintf (stderr ,
259
261
_ ("%s: could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields\n" ),
260
262
progname , PQntuples (res ), PQnfields (res ), 1 , 3 );
263
+
264
+ PQclear (res );
261
265
return false;
262
266
}
263
267
@@ -277,6 +281,8 @@ RunIdentifySystem(PGconn *conn, char **sysid, TimeLineID *starttli,
277
281
fprintf (stderr ,
278
282
_ ("%s: could not parse transaction log location \"%s\"\n" ),
279
283
progname , PQgetvalue (res , 0 , 2 ));
284
+
285
+ PQclear (res );
280
286
return false;
281
287
}
282
288
* startpos = ((uint64 ) hi ) << 32 | lo ;
@@ -331,6 +337,9 @@ CreateReplicationSlot(PGconn *conn, const char *slot_name, const char *plugin,
331
337
{
332
338
fprintf (stderr , _ ("%s: could not send replication command \"%s\": %s" ),
333
339
progname , query -> data , PQerrorMessage (conn ));
340
+
341
+ destroyPQExpBuffer (query );
342
+ PQclear (res );
334
343
return false;
335
344
}
336
345
@@ -340,6 +349,9 @@ CreateReplicationSlot(PGconn *conn, const char *slot_name, const char *plugin,
340
349
_ ("%s: could not create replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields\n" ),
341
350
progname , slot_name ,
342
351
PQntuples (res ), PQnfields (res ), 1 , 4 );
352
+
353
+ destroyPQExpBuffer (query );
354
+ PQclear (res );
343
355
return false;
344
356
}
345
357
@@ -353,11 +365,15 @@ CreateReplicationSlot(PGconn *conn, const char *slot_name, const char *plugin,
353
365
fprintf (stderr ,
354
366
_ ("%s: could not parse transaction log location \"%s\"\n" ),
355
367
progname , PQgetvalue (res , 0 , 1 ));
368
+
369
+ destroyPQExpBuffer (query );
370
+ PQclear (res );
356
371
return false;
357
372
}
358
373
* startpos = ((uint64 ) hi ) << 32 | lo ;
359
374
}
360
375
376
+ destroyPQExpBuffer (query );
361
377
PQclear (res );
362
378
return true;
363
379
}
@@ -384,6 +400,9 @@ DropReplicationSlot(PGconn *conn, const char *slot_name)
384
400
{
385
401
fprintf (stderr , _ ("%s: could not send replication command \"%s\": %s" ),
386
402
progname , query -> data , PQerrorMessage (conn ));
403
+
404
+ destroyPQExpBuffer (query );
405
+ PQclear (res );
387
406
return false;
388
407
}
389
408
@@ -393,6 +412,9 @@ DropReplicationSlot(PGconn *conn, const char *slot_name)
393
412
_ ("%s: could not drop replication slot \"%s\": got %d rows and %d fields, expected %d rows and %d fields\n" ),
394
413
progname , slot_name ,
395
414
PQntuples (res ), PQnfields (res ), 0 , 0 );
415
+
416
+ destroyPQExpBuffer (query );
417
+ PQclear (res );
396
418
return false;
397
419
}
398
420
0 commit comments