aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/mail-component.c8
2 files changed, 12 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 47b6864f27..bfaeff0456 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,9 @@
+2004-08-25 Not Zed <NotZed@Ximian.com>
+
+ * mail-component.c (store_info_new): only open the trash or junk
+ if they're vfolders here. Some stores that implement their own
+ trash folders are unacceptably slow to open otherwise.
+
2004-08-25 Frederic Crozat <fcrozat@mandrakesoft.com>
* importers/evolution-mbox-importer.c: (load_file_fn):
diff --git a/mail/mail-component.c b/mail/mail-component.c
index 500fa35516..6d2201937a 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -149,8 +149,12 @@ store_info_new(CamelStore *store, const char *name)
si->name = g_strdup(name);
si->store = store;
camel_object_ref(store);
- si->vtrash = camel_store_get_trash(store, NULL);
- si->vjunk = camel_store_get_junk(store, NULL);
+ /* If these are vfolders then they need to be opened now,
+ * otherwise they wont keep track of all folders */
+ if ((store->flags & CAMEL_STORE_VTRASH) != 0)
+ si->vtrash = camel_store_get_trash(store, NULL);
+ if ((store->flags & CAMEL_STORE_VJUNK) != 0)
+ si->vjunk = camel_store_get_junk(store, NULL);
return si;
}