diff options
-rw-r--r-- | mail/ChangeLog | 11 | ||||
-rw-r--r-- | mail/mail-folder-cache.c | 15 |
2 files changed, 12 insertions, 14 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 3c2a38f0ec..1fe82f5790 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,13 @@ +2002-07-01 Not Zed <NotZed@Ximian.com> + + * mail-folder-cache.c (folder_deleted): Removed. The + folder's deleted event isn't needed since we're listening to the + store's folder_deleted signal. Also, the code was wrong, it + cleared the folder without disconnecting events, etc. See #16486, + and probably others. + (mail_note_folder): Dont hook onto deleted anymore. + (unset_folder_info): Or unhook from it. + 2002-06-28 Jeffrey Stedfast <fejj@ximian.com> * component-factory.c (mail_load_storages): Don't skip over @@ -73,6 +83,7 @@ * mail-format.c (handle_multipart_signed): Use the new gpg cipher context. +>>>>>>> 1.2235 2002-06-18 Jeffrey Stedfast <fejj@ximian.com> * message-list.c (message_list_change_first_visible_parent): New diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c index 4ceb61b16a..8b55601f7a 100644 --- a/mail/mail-folder-cache.c +++ b/mail/mail-folder-cache.c @@ -227,7 +227,6 @@ unset_folder_info(struct _folder_info *mfi, int delete) camel_object_unhook_event((CamelObject *)folder, "folder_changed", folder_changed, mfi); camel_object_unhook_event((CamelObject *)folder, "message_changed", folder_changed, mfi); - camel_object_unhook_event((CamelObject *)folder, "deleted", folder_deleted, mfi); camel_object_unhook_event((CamelObject *)folder, "renamed", folder_renamed, mfi); camel_object_unhook_event((CamelObject *)folder, "finalize", folder_finalised, mfi); } @@ -393,17 +392,6 @@ folder_finalised(CamelObject *o, gpointer event_data, gpointer user_data) } static void -folder_deleted(CamelObject *o, gpointer event_data, gpointer user_data) -{ - struct _folder_info *mfi = user_data; - - d(printf("Folder deleted '%s'!\n", ((CamelFolder *)o)->full_name)); - LOCK(info_lock); - mfi->folder = NULL; - UNLOCK(info_lock); -} - -static void folder_renamed(CamelObject *o, gpointer event_data, gpointer user_data) { struct _folder_info *mfi = user_data; @@ -454,7 +442,6 @@ void mail_note_folder(CamelFolder *folder) camel_object_hook_event((CamelObject *)folder, "folder_changed", folder_changed, mfi); camel_object_hook_event((CamelObject *)folder, "message_changed", folder_changed, mfi); - camel_object_hook_event((CamelObject *)folder, "deleted", folder_deleted, mfi); camel_object_hook_event((CamelObject *)folder, "renamed", folder_renamed, mfi); camel_object_hook_event((CamelObject *)folder, "finalize", folder_finalised, mfi); @@ -494,7 +481,7 @@ store_folder_unsubscribed(CamelObject *o, void *event_data, void *data) struct _folder_info *mfi; CamelStore *store = (CamelStore *)o; - d(printf("Folder deleted: %s\n", fi->full_name)); + d(printf("Store Folder deleted: %s\n", fi->full_name)); LOCK(info_lock); si = g_hash_table_lookup(stores, store); |