diff --git a/src/bin/pg_basebackup/streamutil.c b/src/bin/pg_basebackup/streamutil.c index 2c963b6..273b2cf 100644 *** a/src/bin/pg_basebackup/streamutil.c --- b/src/bin/pg_basebackup/streamutil.c *************** RunIdentifySystem(PGconn *conn, char **s *** 295,308 **** if (db_name != NULL) { if (PQnfields(res) < 4) ! fprintf(stderr, ! _("%s: could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields\n"), ! progname, PQntuples(res), PQnfields(res), 1, 4); ! ! if (PQgetisnull(res, 0, 3)) ! *db_name = NULL; else ! *db_name = pg_strdup(PQgetvalue(res, 0, 3)); } PQclear(res); --- 295,315 ---- if (db_name != NULL) { if (PQnfields(res) < 4) ! { ! if (PQserverVersion(conn) >= 90400) ! fprintf(stderr, ! _("%s: could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields\n"), ! progname, PQntuples(res), PQnfields(res), 1, 4); ! else ! *db_name = NULL; ! } else ! { ! if (PQgetisnull(res, 0, 3)) ! *db_name = NULL; ! else ! *db_name = pg_strdup(PQgetvalue(res, 0, 3)); ! } } PQclear(res);