diff options
author | Milan Crha <mcrha@redhat.com> | 2008-02-22 18:49:55 +0800 |
---|---|---|
committer | Milan Crha <mcrha@src.gnome.org> | 2008-02-22 18:49:55 +0800 |
commit | efb45db411d5f64e95cc2eba2501ff3f73239cb3 (patch) | |
tree | 1b296f58812fe164aa0a9bd600dbe46a3fe30121 /mail/mail-folder-cache.h | |
parent | bdb224def86d58bde4218fa8ed21d689242923f9 (diff) | |
download | gsoc2013-evolution-efb45db411d5f64e95cc2eba2501ff3f73239cb3.tar.gz gsoc2013-evolution-efb45db411d5f64e95cc2eba2501ff3f73239cb3.tar.zst gsoc2013-evolution-efb45db411d5f64e95cc2eba2501ff3f73239cb3.zip |
** Fix for bug #512776
2008-02-22 Milan Crha <mcrha@redhat.com>
** Fix for bug #512776
* Changes below prevents deadlock on start or send/receive.
* mail-send-recv.c: (struct _refresh_folders_msg),
(refresh_folders_exec), (refresh_folders_free),
(receive_update_got_folderinfo): Do not look for active folders in
main thread, rather do it in other thread and free folder info later.
* mail-ops.h: (mail_get_folderinfo):
* mail-ops.c: (struct _get_folderinfo_msg), (get_folderinfo_done),
(get_folderinfo_free), (mail_get_folderinfo):
* mail-folder-cache.h: (mail_note_store):
* mail-folder-cache.c: (struct _update_data), (update_folders),
(mail_note_store):
* mail-component.c: (mc_add_store_done):
The 'done' function returns if we can free folder info or not.
svn path=/trunk/; revision=35071
Diffstat (limited to 'mail/mail-folder-cache.h')
-rw-r--r-- | mail/mail-folder-cache.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/mail/mail-folder-cache.h b/mail/mail-folder-cache.h index 656d97135b..3c16e8c54e 100644 --- a/mail/mail-folder-cache.h +++ b/mail/mail-folder-cache.h @@ -29,10 +29,11 @@ /* Add a store whose folders should appear in the shell The folders are scanned from the store, and/or added at - runtime via the folder_created event */ + runtime via the folder_created event. + The 'done' function returns if we can free folder info. */ void mail_note_store (CamelStore *store, CamelOperation *op, - void (*done) (CamelStore *store, CamelFolderInfo *info, void *data), + gboolean (*done) (CamelStore *store, CamelFolderInfo *info, void *data), void *data); /* de-note a store */ |