aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shell.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2003-01-10 07:59:39 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2003-01-10 07:59:39 +0800
commit921933660b1dba5a93e98d7b244fcd439896ae9f (patch)
treeb680c746d5c269c33d430fe1dc2662e9c16fda4f /shell/e-shell.c
parentc002a2ab81f9a2ef782309f455e1232bbe5543a9 (diff)
downloadgsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar.gz
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar.bz2
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar.lz
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar.xz
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.tar.zst
gsoc2013-evolution-921933660b1dba5a93e98d7b244fcd439896ae9f.zip
Properly reset activity_interface to NULL.
* evolution-shell-client.c (impl_dispose): Properly reset activity_interface to NULL. (evolution_shell_client_construct): Ref the shell object here. * e-shell.c (view_weak_notify): Ref the shell since it's being passed to notify_no_views_left_idle_cb as the data. (notify_no_views_left_idle_cb): Only unref the shell here. svn path=/trunk/; revision=19381
Diffstat (limited to 'shell/e-shell.c')
-rw-r--r--shell/e-shell.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/shell/e-shell.c b/shell/e-shell.c
index e15902abc0..267addbfa8 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -979,8 +979,6 @@ notify_no_views_left_idle_cb (void *data)
set_interactive (shell, FALSE);
- bonobo_object_ref (BONOBO_OBJECT (shell));
-
g_signal_emit (shell, signals [NO_VIEWS_LEFT], 0);
bonobo_object_unref (BONOBO_OBJECT (shell));
@@ -1002,13 +1000,15 @@ view_weak_notify (void *data,
/* If this is our last view, save settings now because in the callback
for no_views_left shell->priv->views will be NULL and settings won't
be saved because of that. */
- if (num_views - 1 == 0)
+ if (num_views == 1)
e_shell_save_settings (shell);
shell->priv->views = g_list_remove (shell->priv->views, where_the_object_was);
- if (shell->priv->views == NULL)
+ if (shell->priv->views == NULL) {
+ bonobo_object_ref (BONOBO_OBJECT (shell));
g_idle_add (notify_no_views_left_idle_cb, shell);
+ }
}
static EShellView *