diff options
-rw-r--r-- | mail/ChangeLog | 7 | ||||
-rw-r--r-- | mail/mail-folder-cache.c | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index acb57b8b0b..ed06620a0c 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,10 @@ +2001-10-09 <NotZed@Ximian.com> + + * mail-folder-cache.c (folder_changed): Ref folder so it hangs + around till we're done with it. + (real_folder_changed): Unref folder when we are done with it. + Should fix #11981. + 2001-10-09 Jeffrey Stedfast <fejj@ximian.com> * folder-browser.c (done_message_selected): Make sure the diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c index 2e292699b5..44bb972c31 100644 --- a/mail/mail-folder-cache.c +++ b/mail/mail-folder-cache.c @@ -185,6 +185,7 @@ real_folder_changed(CamelFolder *folder, void *event_data, void *data) struct _folder_info *mfi = data; update_1folder(mfi, NULL); + camel_object_unref((CamelObject *)folder); } static void @@ -197,6 +198,7 @@ folder_changed(CamelObject *o, gpointer event_data, gpointer user_data) d(printf("Fodler changed!\n")); /* hopefully our mfi isn't lost while this is executing ... */ + camel_object_ref((CamelObject *)o); mail_proxy_event((CamelObjectEventHookFunc)real_folder_changed, o, NULL, mfi); } |