dovecot-1.1: Added asserts.

dovecot at dovecot.org dovecot at dovecot.org
Thu Oct 16 12:38:30 EEST 2008


details:   http://hg.dovecot.org/dovecot-1.1/rev/82d4756f43cc
changeset: 7936:82d4756f43cc
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Oct 16 12:38:25 2008 +0300
description:
Added asserts.

diffstat:

2 files changed, 10 insertions(+), 3 deletions(-)
src/lib-mail/message-header-parser.c |    1 +
src/lib/istream.c                    |   12 +++++++++---

diffs (40 lines):

diff -r b61424a50786 -r 82d4756f43cc src/lib-mail/message-header-parser.c
--- a/src/lib-mail/message-header-parser.c	Tue Oct 14 00:58:13 2008 +0300
+++ b/src/lib-mail/message-header-parser.c	Thu Oct 16 12:38:25 2008 +0300
@@ -110,6 +110,7 @@ int message_parse_header_next(struct mes
 				/* stream is nonblocking - need more data */
 				return 0;
 			}
+			i_assert(size > 0);
 
 			if (msg[0] == '\n' ||
 			    (msg[0] == '\r' && size > 1 && msg[1] == '\n')) {
diff -r b61424a50786 -r 82d4756f43cc src/lib/istream.c
--- a/src/lib/istream.c	Tue Oct 14 00:58:13 2008 +0300
+++ b/src/lib/istream.c	Thu Oct 16 12:38:25 2008 +0300
@@ -71,7 +71,11 @@ ssize_t i_stream_read(struct istream *st
 	stream->stream_errno = 0;
 
 	ret = _stream->read(_stream);
-	if (ret == -1) {
+	switch (ret) {
+	case -2:
+		i_assert(_stream->skip != _stream->pos);
+		break;
+	case -1:
 		if (stream->stream_errno != 0) {
 			/* error handling should be easier if we now just
 			   assume the stream is now at EOF */
@@ -79,8 +83,10 @@ ssize_t i_stream_read(struct istream *st
 		} else {
 			i_assert(stream->eof);
 		}
-	} else {
-		i_assert(ret != 0 || !stream->blocking);
+		break;
+	case 0:
+		i_assert(!stream->blocking);
+		break;
 	}
 	return ret;
 }


More information about the dovecot-cvs mailing list