diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 12 | ||||
-rw-r--r-- | mail/mail-folder-cache.c | 13 |
2 files changed, 23 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 6ce45afb7f..5bab0ed476 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,11 @@ +2008-09-01 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #534039 + + * mail-folder-cache.c: (real_flush_updates): Make sure search folder's + unread count will be tracked properly in a tree even before the folder + is opened in the UI. (The previous patch for this bug made this issue.) + 2008-09-01 Paul Bolle <pebolle@tiscali.nl> ** Fix for bug #549661 @@ -117,10 +125,10 @@ License Changes 2008-08-14 Sebastien Bacher <seb128@ubuntu.com> - ** Fix for bug #547805 + ** Fix for bug #547805 * em-popup.c: (emp_standard_menu_factory): - don't filter applications using g_app_info_should_show() + don't filter applications using g_app_info_should_show() 2008-08-13 Moritz Mertinkat <moritz@mertinkat.net> diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c index b610a8a2b5..dce2f9f62b 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)) { + /* 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); |