aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-display.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2001-12-08 04:25:04 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2001-12-08 04:25:04 +0800
commitd0053fd3c738f9f532a4207d6b29d24c57c46203 (patch)
treefee37738ab44874e88b59e56b7ffafbb3c399d58 /mail/mail-display.c
parent18912c528b4b4d11fbfb091a1ee5bded1acfa755 (diff)
downloadgsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar.gz
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar.bz2
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar.lz
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar.xz
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.tar.zst
gsoc2013-evolution-d0053fd3c738f9f532a4207d6b29d24c57c46203.zip
Check that the mail-display hasn't been destroyed.
2001-12-04 Jeffrey Stedfast <fejj@ximian.com> * mail-display.c (stream_write_or_redisplay_when_loaded): Check that the mail-display hasn't been destroyed. (mail_display_redisplay): Same here. 2001-12-07 Dan Winship <danw@ximian.com> * mail-send-recv.c (receive_update_got_store): If updating a store that we don't have an associated storage for, just request a folder tree and then free it. (For the Connector) * mail-callbacks.h: Add missing part of Jeff's 12-03 patch so this actually compiles. svn path=/trunk/; revision=14938
Diffstat (limited to 'mail/mail-display.c')
-rw-r--r--mail/mail-display.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/mail/mail-display.c b/mail/mail-display.c
index 47709c1897..8b4545880a 100644
--- a/mail/mail-display.c
+++ b/mail/mail-display.c
@@ -1247,6 +1247,9 @@ stream_write_or_redisplay_when_loaded (MailDisplay *md,
struct _load_content_msg *m;
GHashTable *loading;
+ if (GTK_OBJECT_DESTROYED (md))
+ return;
+
loading = g_datalist_get_data (md->data, "loading");
if (loading) {
if (g_hash_table_lookup (loading, key))
@@ -1350,10 +1353,13 @@ clear_data (CamelObject *object, gpointer event_data, gpointer user_data)
void
mail_display_redisplay (MailDisplay *md, gboolean unscroll)
{
+ if (GTK_OBJECT_DESTROYED (md))
+ return;
+
md->last_active = NULL;
- md->redisplay_counter ++;
+ md->redisplay_counter++;
/* printf ("md %p redisplay %d\n", md, md->redisplay_counter); */
-
+
md->stream = gtk_html_begin (GTK_HTML (md->html));
if (!unscroll) {
/* This is a hack until there's a clean way to do this. */
@@ -1469,16 +1475,16 @@ mail_display_destroy (GtkObject *object)
g_free (mail_display->charset);
g_free (mail_display->selection);
-
+
g_datalist_clear (mail_display->data);
g_free (mail_display->data);
mail_display->data = NULL;
if (mail_display->idle_id)
- gtk_timeout_remove(mail_display->idle_id);
-
+ gtk_timeout_remove (mail_display->idle_id);
+
gtk_widget_unref (mail_display->invisible);
-
+
mail_display_parent_class->destroy (object);
}