diff options
-rw-r--r-- | shell/ChangeLog | 6 | ||||
-rw-r--r-- | shell/e-shell.c | 18 |
2 files changed, 18 insertions, 6 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog index 8f78ac8936..78562a3b96 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,9 @@ +2001-08-02 Ettore Perazzoli <ettore@ximian.com> + + * e-shell.c (e_shell_construct): Spit out a warning if we cannot + resolve "Bonobo/ConfigDatabase" on "wombat:". Also, register on + OAF only after we are sure we are not going to return FALSE. + 2001-08-01 Ettore Perazzoli <ettore@ximian.com> * e-shell-view.c (switch_on_folder_tree_click): Set the diff --git a/shell/e-shell.c b/shell/e-shell.c index 62c891e2f8..1b3dcbbde8 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -793,12 +793,6 @@ e_shell_construct (EShell *shell, g_return_val_if_fail (local_directory != NULL, FALSE); g_return_val_if_fail (g_path_is_absolute (local_directory), FALSE); - /* FIXME: Multi-display stuff. */ - - corba_object = bonobo_object_corba_objref (BONOBO_OBJECT (shell)); - if (oaf_active_server_register (iid, corba_object) != OAF_REG_SUCCESS) - return FALSE; - if (! show_splash) { splash = NULL; } else { @@ -827,12 +821,24 @@ e_shell_construct (EShell *shell, priv->db = bonobo_get_object ("wombat:", "Bonobo/ConfigDatabase", &ev); if (BONOBO_EX (&ev) || priv->db == CORBA_OBJECT_NIL) { + g_warning ("Cannot access Bonobo/ConfigDatabase on wombat:"); CORBA_exception_free (&ev); return FALSE; } CORBA_exception_free (&ev); + + /* Now we can register into OAF. Notice that we shouldn't be + registering into OAF until we are sure we can complete the + process. */ + /* FIXME: Multi-display stuff. */ + corba_object = bonobo_object_corba_objref (BONOBO_OBJECT (shell)); + if (oaf_active_server_register (iid, corba_object) != OAF_REG_SUCCESS) { + CORBA_exception_free (&ev); + return FALSE; + } + if (show_splash) setup_components (shell, E_SPLASH (splash)); else |