From a099cf6547610d141567b95681998c7ae6af2633 Mon Sep 17 00:00:00 2001 From: Peter Williams Date: Fri, 13 Jul 2001 17:55:27 +0000 Subject: Segfault prevention here if we lose the race with 2001-07-13 Peter Williams * mail-callbacks.c (expunge_folder): Segfault prevention here if we lose the race with message_list_set_hidedeleted(). svn path=/trunk/; revision=11092 --- mail/ChangeLog | 3 +++ mail/mail-callbacks.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'mail') diff --git a/mail/ChangeLog b/mail/ChangeLog index 13e4833c93..cf7a9a0562 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,8 @@ 2001-07-13 Peter Williams + * mail-callbacks.c (expunge_folder): Segfault prevention here if we lose + the race with message_list_set_hidedeleted(). + * mail-vfolder.c (unlist_vfolder): New function. If a vfolder in our list gets finalized, NULL out info->folder (Is it wrong if this happens?) Also, locking issues? diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c index 0800886a7f..8e97ac6963 100644 --- a/mail/mail-callbacks.c +++ b/mail/mail-callbacks.c @@ -1653,8 +1653,9 @@ expunge_folder (BonoboUIComponent *uih, void *user_data, const char *path) /* Only blank the mail display if the message being viewed is one of those to be expunged */ + /* We have a race here if the above hidedeleted hides loaded_uid */ info = camel_folder_get_message_info (fb->folder, fb->loaded_uid); - if (info->flags & CAMEL_MESSAGE_DELETED) + if (info && info->flags & CAMEL_MESSAGE_DELETED) mail_display_set_message (fb->mail_display, NULL); fb->expunging = fb->folder; -- cgit v1.2.3