From: Timo Sirainen Date: Thu, 22 Dec 2016 16:58:29 +0000 (-0500) Subject: fs-randomfail: Fix failure handling for fs_read() X-Git-Tag: 2.3.0.rc1~2379 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d7ff3c153fdf39acd70b6883482a0fdbf9d7917f;p=thirdparty%2Fdovecot%2Fcore.git fs-randomfail: Fix failure handling for fs_read() --- diff --git a/src/lib-fs/fs-randomfail.c b/src/lib-fs/fs-randomfail.c index ede8b31315..f5c99deaaf 100644 --- a/src/lib-fs/fs-randomfail.c +++ b/src/lib-fs/fs-randomfail.c @@ -307,7 +307,9 @@ static ssize_t fs_randomfail_read(struct fs_file *_file, void *buf, size_t size) if (fs_file_random_fail_begin(file, FS_OP_READ)) return -1; ret = fs_read(_file->parent, buf, size); - return fs_file_random_fail_end(file, ret, FS_OP_READ); + if (fs_file_random_fail_end(file, ret < 0 ? -1 : 0, FS_OP_READ) < 0) + return -1; + return ret; } static struct istream *