From 43baecdc9e034c3253ee7c068c3a53e4980cdf8a Mon Sep 17 00:00:00 2001 From: Flan's server Date: Tue, 18 May 2021 06:10:08 +0000 Subject: [PATCH] fix sfread --- src/bits.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bits.c b/src/bits.c index b00293c..865e373 100644 --- a/src/bits.c +++ b/src/bits.c @@ -12,7 +12,8 @@ static inline int sfread(void* out, size_t *restrict size, FILE* f) { - return !!(*size = (size_t)fread(out, 1, *size, f)); + register ssize_t r = fread(out, 1, *size, f); + return r < 0 ? 0 : !!((*size) = (size_t)r); } static int fwrite_all(const void* _buf, size_t sz, size_t num, FILE* out)