diff options
author | Not Zed <NotZed@Ximian.com> | 2004-10-12 10:42:00 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2004-10-12 10:42:00 +0800 |
commit | 2d89e54a1d42b95417f0ecf3631b272c35f9b231 (patch) | |
tree | 55ceac0a7e385aa6aea15288595635250c1a327a | |
parent | 567688b263b9dc5e5d3278c85f3b6f5ae981b8e1 (diff) | |
download | gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar.gz gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar.bz2 gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar.lz gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar.xz gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.tar.zst gsoc2013-evolution-2d89e54a1d42b95417f0ecf3631b272c35f9b231.zip |
** See bug #67408.
2004-10-11 Not Zed <NotZed@Ximian.com>
** See bug #67408.
* em-folder-view.c (emfv_gui_folder_changed): noop if we were
destroyed.
(emfv_destroy): set destroyed bit.
svn path=/trunk/; revision=27544
-rw-r--r-- | mail/ChangeLog | 8 | ||||
-rw-r--r-- | mail/em-folder-view.c | 10 |
2 files changed, 15 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index a57b5a45ed..2b0d00aa6f 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,13 @@ 2004-10-11 Not Zed <NotZed@Ximian.com> + ** See bug #67408. + + * em-folder-view.c (emfv_gui_folder_changed): noop if we were + destroyed. + (emfv_destroy): set destroyed bit. + +2004-10-11 Not Zed <NotZed@Ximian.com> + * mail-component.c (mc_startup): register the formatter types before registering the formatter hook. diff --git a/mail/em-folder-view.c b/mail/em-folder-view.c index ab3de6d597..ff53fa4eb0 100644 --- a/mail/em-folder-view.c +++ b/mail/em-folder-view.c @@ -129,6 +129,7 @@ struct _EMFolderViewPrivate { guint seen_id; guint setting_notify_id; int nomarkseen:1; + int destroyed:1; CamelObjectHookID folder_changed_id; @@ -221,6 +222,8 @@ emfv_destroy (GtkObject *o) EMFolderView *emfv = (EMFolderView *) o; struct _EMFolderViewPrivate *p = emfv->priv; + p->destroyed = TRUE; + if (p->seen_id) { g_source_remove(p->seen_id); p->seen_id = 0; @@ -2221,9 +2224,10 @@ emfv_format_popup_event(EMFormatHTMLDisplay *efhd, GdkEventButton *event, const static void emfv_gui_folder_changed(CamelFolder *folder, void *dummy, EMFolderView *emfv) { - emfv_enable_menus(emfv); - - g_signal_emit(emfv, signals[EMFV_LOADED], 0); + if (!emfv->priv->destroyed) { + emfv_enable_menus(emfv); + g_signal_emit(emfv, signals[EMFV_LOADED], 0); + } g_object_unref(emfv); } |