diff options
Diffstat (limited to 'src/ephy-main.c')
-rw-r--r-- | src/ephy-main.c | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/ephy-main.c b/src/ephy-main.c index 4cd79fc7e..6ca4209ed 100644 --- a/src/ephy-main.c +++ b/src/ephy-main.c @@ -215,20 +215,7 @@ ephy_main_start (gpointer data) (gaserver, &corba_env); } /* provided with urls? */ - else if (n_urls == 0 && - !open_as_nautilus_view) - { - /* no, open a default window */ - GNOME_EphyAutomation_loadurl - (gaserver, "", - open_fullscreen, - open_in_existing, - open_in_new_window, - open_in_new_tab, - !noraise, - &corba_env); - } - else + else if (!open_as_nautilus_view) { /* open all of the urls */ for (i = 0; i < n_urls; i++) @@ -244,8 +231,11 @@ ephy_main_start (gpointer data) } } - /* Unref so it will exit if no more used */ - if (first_instance) + /* Unref so it will exit if no more used + * If started with --nautilus-view, only exit when the + * last view has been destroyed. + */ + if (first_instance && !open_as_nautilus_view) { g_object_unref (G_OBJECT(ephy_shell)); } @@ -262,6 +252,18 @@ ephy_main_start (gpointer data) return FALSE; } +/* dummy argument to open a default window */ +static gint +ephy_main_dummy_url_argument (gchar ***urls) +{ + *urls = g_new0 (gchar *, 2); + + (*urls)[0] = g_strdup (""); + (*urls)[1] = NULL; + + return 1; +} + /** * translate_url_arguments: gather URL arguments and expand them fully * with realpath if they're filenames @@ -276,8 +278,7 @@ ephy_main_translate_url_arguments (poptContext context, gchar ***urls) /* any context remaining? */ if (context == NULL) { - *urls = NULL; - return 0; + return ephy_main_dummy_url_argument (urls); } /* get the args and check */ @@ -285,8 +286,7 @@ ephy_main_translate_url_arguments (poptContext context, gchar ***urls) if (args == NULL) { poptFreeContext (context); - *urls = NULL; - return 0; + return ephy_main_dummy_url_argument (urls); } /* count args */ |