aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/pop3
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-10-01 21:52:24 +0800
committerDan Winship <danw@src.gnome.org>2001-10-01 21:52:24 +0800
commit8daf9d8d2c50fc6659efe3a711e7c2a8b770858d (patch)
tree9136e06d506b939978ff4b747ea2a97a4f0eede8 /camel/providers/pop3
parentf52002e0be946bdc00c5a1a3645c21e338c5ee13 (diff)
downloadgsoc2013-evolution-8daf9d8d2c50fc6659efe3a711e7c2a8b770858d.tar.gz
gsoc2013-evolution-8daf9d8d2c50fc6659efe3a711e7c2a8b770858d.tar.zst
gsoc2013-evolution-8daf9d8d2c50fc6659efe3a711e7c2a8b770858d.zip
if STAT returns 0, don't bother sending UIDL. Speeds things up slightly
* 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). svn path=/trunk/; revision=13257
Diffstat (limited to 'camel/providers/pop3')
-rw-r--r--camel/providers/pop3/camel-pop3-folder.c7
1 files changed, 7 insertions, 0 deletions
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) {