diff --git a/src/bin/pg_basebackup/receivelog.c b/src/bin/pg_basebackup/receivelog.c
index efbc4ca653394a66c2ef4d06d0fe9529210fd8f9..48ab385c48bcc5b0a4e2b023ca6cb31708cced7c 100644
--- a/src/bin/pg_basebackup/receivelog.c
+++ b/src/bin/pg_basebackup/receivelog.c
@@ -366,7 +366,8 @@ ReceiveXlogStream(PGconn *conn, XLogRecPtr startpos, uint32 timeline, char *sysi
 			}
 			else if (r < 0)
 			{
-				fprintf(stderr, _("%s: select() failed: %m\n"), progname);
+				fprintf(stderr, _("%s: select() failed: %s\n"),
+						progname, strerror(errno));
 				return false;
 			}
 			/* Else there is actually data on the socket */