aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap/camel-imap-command.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/providers/imap/camel-imap-command.c')
-rw-r--r--camel/providers/imap/camel-imap-command.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/camel/providers/imap/camel-imap-command.c b/camel/providers/imap/camel-imap-command.c
index eeb3ecd302..fdba581fbb 100644
--- a/camel/providers/imap/camel-imap-command.c
+++ b/camel/providers/imap/camel-imap-command.c
@@ -43,7 +43,7 @@
#include <camel/camel-private.h>
#include <camel/camel-utf8.h>
#include <camel/camel-session.h>
-#include "camel-i18n.h"
+
extern int camel_verbose_debug;
@@ -499,10 +499,16 @@ imap_read_untagged (CamelImapStore *store, char *line, CamelException *ex)
fulllen += str->len;
g_ptr_array_add (data, str);
-
+
/* Read the next line. */
- if (camel_imap_store_readline (store, &line, ex) < 0)
- goto lose;
+ do {
+ if (camel_imap_store_readline (store, &line, ex) < 0)
+ goto lose;
+
+ /* MAJOR HACK ALERT, gropuwise sometimes sends an extra blank line after literals, check that here */
+ if (line[0] == 0)
+ g_warning("Server sent empty line after a literal, assuming in error");
+ } while (line[0] == 0);
}
/* Now reassemble the data. */