diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-05-18 20:07:19 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-05-18 20:21:19 +0800 |
commit | bc054c94cb46e4f8f8881c2a1b0268e2f05b307b (patch) | |
tree | b5d5aa33a890d0f5e3dad22cdb5a492df5a8c956 /mail/e-mail-browser.c | |
parent | 0ef487186875ab5dc9a049998ac1af0a2bec085e (diff) | |
download | gsoc2013-evolution-bc054c94cb46e4f8f8881c2a1b0268e2f05b307b.tar.gz gsoc2013-evolution-bc054c94cb46e4f8f8881c2a1b0268e2f05b307b.tar.zst gsoc2013-evolution-bc054c94cb46e4f8f8881c2a1b0268e2f05b307b.zip |
Bug 618902 - Crash when viewing/closing messages quickly
Closing an EMailBrowser window causes it to be disposed immediately,
but ongoing async operations still hold an EMailBrowser reference --
in particular, regenerating the internal message list and fetching a
mail message. The callback functions for these operations were not
equipped to deal with the disposed-but-not-yet-finalized object.
Diffstat (limited to 'mail/e-mail-browser.c')
-rw-r--r-- | mail/e-mail-browser.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/mail/e-mail-browser.c b/mail/e-mail-browser.c index e237d51173..ca582ccd35 100644 --- a/mail/e-mail-browser.c +++ b/mail/e-mail-browser.c @@ -441,7 +441,8 @@ mail_browser_dispose (GObject *object) } if (priv->message_list != NULL) { - g_object_unref (priv->message_list); + /* This will cancel a regen operation. */ + gtk_widget_destroy (priv->message_list); priv->message_list = NULL; } |