dovecot: Fixes
dovecot at dovecot.org
dovecot at dovecot.org
Tue Oct 9 22:48:12 EEST 2007
details: http://hg.dovecot.org/dovecot/rev/68c8a6ddde12
changeset: 6544:68c8a6ddde12
user: Timo Sirainen <tss at iki.fi>
date: Tue Oct 09 22:48:09 2007 +0300
description:
Fixes
diffstat:
1 file changed, 9 insertions(+), 5 deletions(-)
src/lib/istream-crlf.c | 14 +++++++++-----
diffs (24 lines):
diff -r 2d0b59aeb41a -r 68c8a6ddde12 src/lib/istream-crlf.c
--- a/src/lib/istream-crlf.c Tue Oct 09 17:30:07 2007 +0300
+++ b/src/lib/istream-crlf.c Tue Oct 09 22:48:09 2007 +0300
@@ -35,11 +35,15 @@ static ssize_t i_stream_crlf_read(struct
size_t i, dest, size;
ssize_t ret;
- ret = i_stream_read(cstream->input);
- if (ret <= 0 && ret != -2) {
- stream->istream.stream_errno = cstream->input->stream_errno;
- stream->istream.eof = cstream->input->eof;
- return ret;
+ data = i_stream_get_data(cstream->input, &size);
+ if (size <= stream->pos) {
+ ret = i_stream_read(cstream->input);
+ if (ret <= 0 && (ret != -2 || stream->skip == 0)) {
+ stream->istream.stream_errno =
+ cstream->input->stream_errno;
+ stream->istream.eof = cstream->input->eof;
+ return ret;
+ }
}
data = i_stream_get_data(cstream->input, &size);
More information about the dovecot-cvs
mailing list