aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog7
-rw-r--r--camel/providers/pop3/camel-pop3-folder.c7
2 files changed, 14 insertions, 0 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index fffedf63d9..4df568aec7 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,10 @@
+2001-10-01 Dan Winship <danw@ximian.com>
+
+ * providers/pop3/camel-pop3-folder.c (pop3_refresh_info): if STAT
+ returns 0, don't bother sending UIDL. Speeds things up slightly
+ and also works around a bug in a particular random POP server.
+ (ximian bug 11369).
+
2001-09-29 Jeffrey Stedfast <fejj@ximian.com>
* camel-pgp-context.c (pgp_sign): Add --no-secmem-warning and
diff --git a/camel/providers/pop3/camel-pop3-folder.c b/camel/providers/pop3/camel-pop3-folder.c
index d18680dddd..e5cca11cff 100644
--- a/camel/providers/pop3/camel-pop3-folder.c
+++ b/camel/providers/pop3/camel-pop3-folder.c
@@ -204,6 +204,13 @@ pop3_refresh_info (CamelFolder *folder, CamelException *ex)
count = atoi (data);
g_free (data);
+ if (count == 0) {
+ camel_operation_end (NULL);
+ pop3_folder->uids = g_ptr_array_new ();
+ pop3_folder->flags = g_new0 (guint32, 0);
+ return;
+ }
+
if (pop3_store->supports_uidl != FALSE) {
status = camel_pop3_command (pop3_store, NULL, ex, "UIDL");
switch (status) {