From 527d6c592aec1e3db5d6cd4205328b73f3047dd9 Mon Sep 17 00:00:00 2001 From: Aki Tuomi Date: Thu, 25 Aug 2016 12:26:55 +0300 Subject: [PATCH] dcrypt: Allow stream prefetch We might get stream that has already been buffered, so we must try read it in case buffer is full. --- src/lib-dcrypt/istream-decrypt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib-dcrypt/istream-decrypt.c b/src/lib-dcrypt/istream-decrypt.c index c5807c2436..4f3ca12dfc 100644 --- a/src/lib-dcrypt/istream-decrypt.c +++ b/src/lib-dcrypt/istream-decrypt.c @@ -670,10 +670,12 @@ i_stream_decrypt_read(struct istream_private *stream) stream->istream.eof = TRUE; return -1; } + /* need to read more input */ ret = i_stream_read(stream->parent); - if (ret == 0 || ret == -2) + if (ret == 0) return ret; + data = i_stream_get_data(stream->parent, &size); if (ret == -1 && (size == 0 || stream->parent->stream_errno != 0)) {