Fix bug #69408 by filling our input buffer if inptr == inend.
authorJeffrey Stedfast <fejj@novell.com>
Mon, 15 Nov 2004 17:39:28 +0000 (17:39 +0000)
committerJeffrey Stedfast <fejj@src.gnome.org>
Mon, 15 Nov 2004 17:39:28 +0000 (17:39 +0000)
2004-11-15  Jeffrey Stedfast  <fejj@novell.com>

* providers/imap4/camel-imap4-stream.c (camel_imap4_stream_line):
Fix bug #69408 by filling our input buffer if inptr == inend.

camel/ChangeLog
camel/providers/imap4/camel-imap4-stream.c

index 20f9aed..76dcea3 100644 (file)
@@ -1,3 +1,8 @@
+2004-11-15  Jeffrey Stedfast  <fejj@novell.com>
+
+       * providers/imap4/camel-imap4-stream.c (camel_imap4_stream_line):
+       Fix bug #69408 by filling our input buffer if inptr == inend.
+
 2004-11-13  Jeffrey Stedfast  <fejj@ximian.com>
 
        * providers/imap4/camel-imap4-engine.c
index 32d1a20..4a48fe5 100644 (file)
@@ -631,7 +631,10 @@ camel_imap4_stream_line (CamelIMAP4Stream *stream, unsigned char **line, size_t
        g_return_val_if_fail (line != NULL, -1);
        g_return_val_if_fail (len != NULL, -1);
        
-       if ((stream->inend - stream->inptr) < 2 && *stream->inptr != '\n') {
+       inptr = stream->inptr;
+       inend = stream->inend;
+       
+       if (inptr == inend || ((inend - inptr) < 2 && *inptr != '\n')) {
                if (imap4_fill (stream) == -1 && stream->inptr == stream->inend)
                        return -1;
        }