dovecot-2.2: i_stream_read(): If stream_errno is set, fail immed...
dovecot at dovecot.org
dovecot at dovecot.org
Thu Apr 3 09:55:04 UTC 2014
details: http://hg.dovecot.org/dovecot-2.2/rev/2e275f4e51c3
changeset: 17184:2e275f4e51c3
user: Timo Sirainen <tss at iki.fi>
date: Thu Apr 03 12:54:18 2014 +0300
description:
i_stream_read(): If stream_errno is set, fail immediately.
Previously the stream_errno was reset to 0, but this required the istream
implementation to correctly set the stream_errno back, which wasn't often
done.
diffstat:
src/lib/istream.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diffs (18 lines):
diff -r 72b50ae2f0c3 -r 2e275f4e51c3 src/lib/istream.c
--- a/src/lib/istream.c Thu Apr 03 12:50:43 2014 +0300
+++ b/src/lib/istream.c Thu Apr 03 12:54:18 2014 +0300
@@ -152,13 +152,12 @@
size_t old_size;
ssize_t ret;
- if (unlikely(stream->closed)) {
+ if (unlikely(stream->closed || stream->stream_errno != 0)) {
errno = stream->stream_errno;
return -1;
}
stream->eof = FALSE;
- stream->stream_errno = 0;
if (_stream->parent != NULL)
i_stream_seek(_stream->parent, _stream->parent_expected_offset);
More information about the dovecot-cvs
mailing list