aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shell-window.c
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@src.gnome.org>2006-10-14 01:24:56 +0800
committerSrinivasa Ragavan <sragavan@src.gnome.org>2006-10-14 01:24:56 +0800
commit7da5e3a0ca096465a8768dc2c302972b68ff929b (patch)
tree8c9ea275183e5b2f35ec1e2c6f9b045094778c4f /shell/e-shell-window.c
parent7f05347fd2d4c62d8af472d08cca0d946e181618 (diff)
downloadgsoc2013-evolution-7da5e3a0ca096465a8768dc2c302972b68ff929b.tar.gz
gsoc2013-evolution-7da5e3a0ca096465a8768dc2c302972b68ff929b.tar.zst
gsoc2013-evolution-7da5e3a0ca096465a8768dc2c302972b68ff929b.zip
** Fix for bug #334966
svn path=/trunk/; revision=32869
Diffstat (limited to 'shell/e-shell-window.c')
-rw-r--r--shell/e-shell-window.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/shell/e-shell-window.c b/shell/e-shell-window.c
index a133985461..4e2d73f81b 100644
--- a/shell/e-shell-window.c
+++ b/shell/e-shell-window.c
@@ -126,6 +126,7 @@ struct _EShellWindowPrivate {
/* The timeout for saving the window size */
guint store_window_size_timer;
+ gboolean destroyed;
};
@@ -838,6 +839,8 @@ impl_dispose (GObject *object)
EShellWindow *self = E_SHELL_WINDOW (object);
EShellWindowPrivate *priv = self->priv;
+ priv->destroyed = TRUE;
+
if (priv->shell != NULL) {
g_object_remove_weak_pointer (G_OBJECT (priv->shell), (void **) &priv->shell);
priv->shell = NULL;
@@ -981,7 +984,8 @@ e_shell_window_init (EShellWindow *shell_window)
priv->tooltips = gtk_tooltips_new ();
priv->shell_view = e_shell_view_new(shell_window);
-
+ priv->destroyed = FALSE;
+
shell_window->priv = priv;
/** @HookPoint: Shell Main Menu
@@ -1234,6 +1238,9 @@ e_shell_window_set_title(EShellWindow *window, const char *component_id, const c
ComponentView *view = NULL;
GSList *p;
+ if (priv->destroyed)
+ return;
+
for (p = priv->component_views; p != NULL; p = p->next) {
ComponentView *this_view = p->data;