aboutsummaryrefslogtreecommitdiffstats
path: root/src/ephy-shell.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ephy-shell.c')
-rw-r--r--src/ephy-shell.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/ephy-shell.c b/src/ephy-shell.c
index 4b9bd1993..26eb28a61 100644
--- a/src/ephy-shell.c
+++ b/src/ephy-shell.c
@@ -47,7 +47,6 @@
#include "print-dialog.h"
#include "ephy-prefs.h"
#include "ephy-gui.h"
-#include "ephy-object-helpers.h"
#ifdef ENABLE_DBUS
#include "ephy-dbus.h"
@@ -481,8 +480,13 @@ ephy_shell_startup (EphyShell *shell,
"from Bonobo when attempting to locate the automation "
"object."));
automation = NULL;
+ goto done;
}
- else if (flags & EPHY_SHELL_STARTUP_BOOKMARKS_EDITOR)
+
+ /* init the session manager up here so we can quit while the resume dialogue is on */
+ gnome_session_init (shell);
+
+ if (flags & EPHY_SHELL_STARTUP_BOOKMARKS_EDITOR)
{
GNOME_EphyAutomation_openBookmarksEditorWithStartupId
(automation, user_time, &ev);
@@ -510,14 +514,10 @@ ephy_shell_startup (EphyShell *shell,
flags & EPHY_SHELL_STARTUP_FULLSCREEN);
}
- if (automation)
- {
- bonobo_object_release_unref (automation, &ev);
- }
-
- gnome_session_init (shell);
+ bonobo_object_release_unref (automation, &ev);
}
+done:
CORBA_exception_free (&ev);
gdk_notify_startup_complete ();
@@ -941,8 +941,7 @@ toolwindow_hide_cb (GtkWidget *widget, EphyShell *es)
session = EPHY_SESSION (ephy_shell_get_session (es));
ephy_session_remove_window (ephy_shell->priv->session, GTK_WINDOW (widget));
-
- ephy_object_idle_unref (ephy_shell);
+ g_object_unref (ephy_shell);
}
GtkWidget *