From: Timo Sirainen Date: Thu, 9 Oct 2014 15:40:54 +0000 (+0300) Subject: lib: Fixed assert-crash in o_stream_send_istream() if input stream was the one that... X-Git-Tag: 2.2.14~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=63866b7a81355543832d3fe01cd744ddd4ea197b;p=thirdparty%2Fdovecot%2Fcore.git lib: Fixed assert-crash in o_stream_send_istream() if input stream was the one that failed. --- diff --git a/src/lib/ostream.c b/src/lib/ostream.c index 4c34aed767..3d69d88216 100644 --- a/src/lib/ostream.c +++ b/src/lib/ostream.c @@ -329,9 +329,12 @@ off_t o_stream_send_istream(struct ostream *outstream, o_stream_clear_error(outstream); ret = _outstream->send_istream(_outstream, instream); if (unlikely(ret < 0)) { - i_assert(outstream->stream_errno != 0); - outstream->last_failed_errno = outstream->stream_errno; - errno = outstream->stream_errno; + if (outstream->stream_errno != 0) { + outstream->last_failed_errno = outstream->stream_errno; + errno = outstream->stream_errno; + } else { + i_assert(instream->stream_errno != 0); + } } return ret; }