From 865c44f21c92971c2f64074dc69ac56a891b8e79 Mon Sep 17 00:00:00 2001 From: Michel Machado Date: Tue, 19 Dec 2017 15:22:48 -0500 Subject: [PATCH] f3write: fix saved_error bug When measure() fails at the very last end of a file, @remaining is zero. Since @saved_errno is not ENOSPC, but @remaining is zero, the code was considering that the file was properly written. --- f3write.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/f3write.c b/f3write.c index aa6d851..a3a0142 100644 --- a/f3write.c +++ b/f3write.c @@ -540,7 +540,9 @@ static int create_and_fill_file(const char *path, long number, size_t size, close(fd); free(full_fn); - if (saved_errno == ENOSPC || remaining == 0) { + if (saved_errno == 0 || saved_errno == ENOSPC) { + if (saved_errno == 0) + assert(remaining == 0); printf("OK!\n"); return saved_errno == ENOSPC; }