diff --git a/contrib/vacuumlo/vacuumlo.c b/contrib/vacuumlo/vacuumlo.c
index b7c8f2c805..264b879bd3 100644
--- a/contrib/vacuumlo/vacuumlo.c
+++ b/contrib/vacuumlo/vacuumlo.c
@@ -231,12 +231,9 @@ vacuumlo(const char *database, const struct _param *param)
 			pg_log_error("%s", PQerrorMessage(conn));
 			PQclear(res);
 			PQfinish(conn);
-			if (schema != NULL)
-				PQfreemem(schema);
-			if (table != NULL)
-				PQfreemem(table);
-			if (field != NULL)
-				PQfreemem(field);
+			PQfreemem(schema);
+			PQfreemem(table);
+			PQfreemem(field);
 			return -1;
 		}
diff --git a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
index 2865024524..7f697b0f29 100644
--- a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
+++ b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c
@@ -741,8 +741,7 @@ static void
 libpqrcv_disconnect(WalReceiverConn *conn)
 {
 	PQfinish(conn->streamConn);
-	if (conn->recvBuf != NULL)
-		PQfreemem(conn->recvBuf);
+	PQfreemem(conn->recvBuf);
 	pfree(conn);
 }
 
@@ -768,8 +767,7 @@ libpqrcv_receive(WalReceiverConn *conn, char **buffer,
 {
 	int			rawlen;
 
-	if (conn->recvBuf != NULL)
-		PQfreemem(conn->recvBuf);
+	PQfreemem(conn->recvBuf);
 	conn->recvBuf = NULL;
 
 	/* Try to receive a CopyData message */
diff --git a/src/bin/pg_basebackup/pg_recvlogical.c b/src/bin/pg_basebackup/pg_recvlogical.c
index 2a4c8b130a..df71ff3931 100644
--- a/src/bin/pg_basebackup/pg_recvlogical.c
+++ b/src/bin/pg_basebackup/pg_recvlogical.c
@@ -277,11 +277,8 @@ StreamLogicalLog(void)
 		int			hdr_len;
 		XLogRecPtr	cur_record_lsn = InvalidXLogRecPtr;
 
-		if (copybuf != NULL)
-		{
-			PQfreemem(copybuf);
-			copybuf = NULL;
-		}
+		PQfreemem(copybuf);
+		copybuf = NULL;
 
 		/*
 		 * Potentially send a status message to the primary.
@@ -595,11 +592,8 @@ StreamLogicalLog(void)
 		{
 			int			r;
 
-			if (copybuf != NULL)
-			{
-				PQfreemem(copybuf);
-				copybuf = NULL;
-			}
+			PQfreemem(copybuf);
+			copybuf = NULL;
 			r = PQgetCopyData(conn, &copybuf, 0);
 			if (r == -1)
 				break;
@@ -634,11 +628,8 @@ StreamLogicalLog(void)
 	}
 	outfd = -1;
 error:
-	if (copybuf != NULL)
-	{
-		PQfreemem(copybuf);
-		copybuf = NULL;
-	}
+	PQfreemem(copybuf);
+	copybuf = NULL;
 	destroyPQExpBuffer(query);
 	PQfinish(conn);
 	conn = NULL;
diff --git a/src/bin/pg_basebackup/receivelog.c b/src/bin/pg_basebackup/receivelog.c
index 976d1e73b1..5f6fd3201f 100644
--- a/src/bin/pg_basebackup/receivelog.c
+++ b/src/bin/pg_basebackup/receivelog.c
@@ -858,8 +858,7 @@ HandleCopyStream(PGconn *conn, StreamCtl *stream,
 	}
 
 error:
-	if (copybuf != NULL)
-		PQfreemem(copybuf);
+	PQfreemem(copybuf);
 	return NULL;
 }
 
@@ -940,8 +939,7 @@ CopyStreamReceive(PGconn *conn, long timeout, pgsocket stop_socket,
 	char	   *copybuf = NULL;
 	int			rawlen;
 
-	if (*buffer != NULL)
-		PQfreemem(*buffer);
+	PQfreemem(*buffer);
 	*buffer = NULL;
 
 	/* Try to receive a CopyData message */
@@ -1204,8 +1202,7 @@ HandleEndOfCopyStream(PGconn *conn, StreamCtl *stream, char *copybuf,
 		}
 		still_sending = false;
 	}
-	if (copybuf != NULL)
-		PQfreemem(copybuf);
+	PQfreemem(copybuf);
 	*stoppos = blockpos;
 	return res;
 }
