dovecot-1.2: Added asserts.

dovecot at dovecot.org dovecot at dovecot.org
Thu Oct 16 14:50:24 EEST 2008


details:   http://hg.dovecot.org/dovecot-1.2/rev/943955343653
changeset: 8277:943955343653
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 dcc80beecb40 -r 943955343653 src/lib-mail/message-header-parser.c
--- a/src/lib-mail/message-header-parser.c	Thu Oct 16 14:49:37 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 dcc80beecb40 -r 943955343653 src/lib/istream.c
--- a/src/lib/istream.c	Thu Oct 16 14:49:37 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