aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-folder-cache.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@src.gnome.org>2008-09-11 23:34:29 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2008-09-11 23:34:29 +0800
commitc0a255eb90769638d57ae4122932f75c46e4e531 (patch)
tree5213694107a246763c25c0a089553dd7c8708b32 /mail/mail-folder-cache.c
parent4c8aa5982c0132716f473873d0e1d7601df14607 (diff)
downloadgsoc2013-evolution-c0a255eb90769638d57ae4122932f75c46e4e531.tar.gz
gsoc2013-evolution-c0a255eb90769638d57ae4122932f75c46e4e531.tar.zst
gsoc2013-evolution-c0a255eb90769638d57ae4122932f75c46e4e531.zip
Merge revisions 36016:36303 from trunk.
svn path=/branches/kill-bonobo/; revision=36307
Diffstat (limited to 'mail/mail-folder-cache.c')
-rw-r--r--mail/mail-folder-cache.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index b610a8a2b5..63a8f2cf90 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -206,6 +206,19 @@ real_flush_updates(void *o, void *event_data, void *data)
e_event_emit((EEvent *)e, "folder.changed", (EEventTarget *)t);
}
+ if (CAMEL_IS_VEE_STORE (up->store) && !up->remove) {
+ /* Normally the vfolder store takes care of the folder_opened event itself,
+ but we add folder to the noting system later, thus we do not know about
+ search folders to update them in a tree, thus ensure their changes will
+ be tracked correctly. */
+ CamelFolder *folder = camel_store_get_folder (up->store, up->full_name, 0, NULL);
+
+ if (folder) {
+ mail_note_folder (folder);
+ camel_object_unref (folder);
+ }
+ }
+
free_update(up);
LOCK(info_lock);