diff options
-rw-r--r-- | shell/ChangeLog | 13 | ||||
-rw-r--r-- | shell/e-shell-view.c | 2 | ||||
-rw-r--r-- | shell/e-shell.c | 3 |
3 files changed, 16 insertions, 2 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog index a908201d5d..c452918e3e 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,5 +1,18 @@ 2001-07-20 Jason Leach <jleach@ximian.com> + [Fix a crash if you start evolution with a bad URI.] + + * e-shell.c (e_shell_create_view): If we can't display the URI, + display the default uri. This is because it's necessary for + e_shell_view_display_uri() to run all the way through so corba + interfaces get setup. + + * e-shell-view.c (e_shell_view_display_uri): If we fail to create + a new view for a URI (happens if you pass in an invalid URI), be + sure to return FALSE. + +2001-07-20 Jason Leach <jleach@ximian.com> + [This is a better way to have "Local Folders" be shown as the local storage name without breaking current user's shortcuts.] diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c index 7add4142cd..2b45f5dcc0 100644 --- a/shell/e-shell-view.c +++ b/shell/e-shell-view.c @@ -1875,7 +1875,7 @@ e_shell_view_display_uri (EShellView *shell_view, if (control != NULL) { g_assert (GTK_IS_WIDGET (control)); show_existing_view (shell_view, uri, control); - } else if (create_new_view_for_uri (shell_view, uri)) { + } else if (!create_new_view_for_uri (shell_view, uri)) { cleanup_delayed_selection (shell_view); priv->delayed_selection = g_strdup (uri); gtk_signal_connect_after (GTK_OBJECT (e_shell_get_storage_set (priv->shell)), "new_folder", diff --git a/shell/e-shell.c b/shell/e-shell.c index 7733752c30..62c891e2f8 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -938,7 +938,8 @@ e_shell_create_view (EShell *shell, GTK_SIGNAL_FUNC (view_destroy_cb), shell); if (uri != NULL) - e_shell_view_display_uri (E_SHELL_VIEW (view), uri); + if (!e_shell_view_display_uri (E_SHELL_VIEW (view), uri)) + e_shell_view_display_uri (E_SHELL_VIEW (view), DEFAULT_URI); shell->priv->views = g_list_prepend (shell->priv->views, view); |