diff --git a/src/backend/utils/adt/genfile.c b/src/backend/utils/adt/genfile.c index 37e90d2302a..2f6aba78b7e 100644 --- a/src/backend/utils/adt/genfile.c +++ b/src/backend/utils/adt/genfile.c @@ -165,8 +165,7 @@ read_binary_file(const char *filename, int64 seek_offset, int64 bytes_to_read, { char rbuf[1]; - fread(rbuf, 1, 1, file); - if (!feof(file)) + if (fread(rbuf, 1, 1, file) != 0 || !feof(file)) ereport(ERROR, (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), errmsg("file length too large")));