From: Timo Sirainen Date: Wed, 27 Jan 2021 18:34:29 +0000 (+0200) Subject: lib: i_stream_read() - Fix assert with DEBUG enabled X-Git-Tag: 2.3.15~144 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=14ab7acd036d5daab474d60919f69012f741c88c;p=thirdparty%2Fdovecot%2Fcore.git lib: i_stream_read() - Fix assert with DEBUG enabled It doesn't matter if the data buffer changes for <=0 return value if the buffer was previously empty. --- diff --git a/src/lib/istream.c b/src/lib/istream.c index 55b9a9eef0..32ee3cee98 100644 --- a/src/lib/istream.c +++ b/src/lib/istream.c @@ -275,7 +275,8 @@ ssize_t i_stream_read(struct istream *stream) i_stream_snapshot_free(&_stream->prev_snapshot); #ifdef DEBUG else if (!invalid) { - i_assert((_stream->pos - _stream->skip) == (prev_pos - prev_skip)); + i_assert((_stream->pos - _stream->skip) == (prev_pos - prev_skip) || + prev_pos == prev_skip); if (prev_pos - prev_skip <= 4) i_assert(memcmp(prev_buf, prev_data + prev_skip, prev_pos - prev_skip) == 0); else {