aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/mail-display.c5
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);