From: Timo Sirainen Date: Wed, 1 Apr 2009 20:09:58 +0000 (-0400) Subject: istream-tee: Added some more asserts. X-Git-Tag: 1.2.rc1~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=63a2f941c1ad029061129ba6384d1d2a02382220;p=thirdparty%2Fdovecot%2Fcore.git istream-tee: Added some more asserts. --HG-- branch : HEAD --- diff --git a/src/lib/istream-tee.c b/src/lib/istream-tee.c index 1a4090550b..40871cb1e1 100644 --- a/src/lib/istream-tee.c +++ b/src/lib/istream-tee.c @@ -123,9 +123,9 @@ static ssize_t i_stream_tee_read(struct istream_private *stream) the parent stream without having to read more. */ last_high_offset = stream->istream.v_offset + (stream->pos - stream->skip); - i_assert(last_high_offset <= input->v_offset + size); - if (last_high_offset == input->v_offset + size) { + if (stream->pos == size) { /* we've read everything, need to read more */ + i_assert(last_high_offset == input->v_offset + size); tee_streams_skip(tstream->tee); ret = i_stream_read(input); if (ret <= 0) { @@ -143,6 +143,7 @@ static ssize_t i_stream_tee_read(struct istream_private *stream) data = i_stream_get_data(input, &size); } else { /* there's still some data available from parent */ + i_assert(last_high_offset < input->v_offset + size); i_assert(stream->pos < size); stream->buffer = data; }