diff options
-rw-r--r-- | mail/ChangeLog | 7 | ||||
-rw-r--r-- | mail/mail-display.c | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 5f96fe082b..f6e67d6808 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,10 @@ +2003-05-20 Not Zed <notzed@lostzed.mmc.com.au> + + ** See bug #43234 + + * mail-display.c (mail_display_set_message): if we've been + destroyed, noop. + 2003-05-16 Dan Winship <danw@ximian.com> * mail-ops.c (mail_empty_trash): New async "empty trash" op. diff --git a/mail/mail-display.c b/mail/mail-display.c index 79f0aea10d..c85d2c952c 100644 --- a/mail/mail-display.c +++ b/mail/mail-display.c @@ -49,6 +49,7 @@ #include <bonobo/bonobo-stream-memory.h> #include <bonobo/bonobo-widget.h> #include <bonobo/bonobo-socket.h> + #include <gdk-pixbuf/gdk-pixbuf.h> #include <gdk-pixbuf/gdk-pixbuf-loader.h> #include <gal/util/e-util.h> @@ -1964,7 +1965,8 @@ mail_display_set_message (MailDisplay *md, CamelMedium *medium, CamelFolder *fol /* For the moment, we deal only with CamelMimeMessage, but in * the future, we should be able to deal with any medium. */ - if (medium && !CAMEL_IS_MIME_MESSAGE (medium)) + if (md->destroyed + || (medium && !CAMEL_IS_MIME_MESSAGE (medium))) return; /* Clean up from previous message. */ @@ -2076,6 +2078,7 @@ mail_display_destroy (GtkObject *object) g_object_unref (mail_display->html); mail_display->html = NULL; } + if (mail_display->current_message) { camel_object_unref (mail_display->current_message); |