diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | shell/ev-window.c | 12 |
2 files changed, 17 insertions, 1 deletions
@@ -1,3 +1,9 @@ +2008-09-13 Carlos Garcia Campos <carlosgc@gnome.org> + + * shell/ev-window.c: (launch_external_uri): + + Assume invalid uris are http uris. Fixes bug #552071. + 2008-09-09 Carlos Garcia Campos <carlosgc@gnome.org> * NEWS: diff --git a/shell/ev-window.c b/shell/ev-window.c index 9f27479..e6b0903 100644 --- a/shell/ev-window.c +++ b/shell/ev-window.c @@ -4886,8 +4886,18 @@ launch_external_uri (EvWindow *window, EvLinkAction *action) const gchar *uri = ev_link_action_get_uri (action); GError *error = NULL; gboolean ret; + + if (!g_strstr_len (uri, strlen (uri), "://")) { + gchar *http; + + /* Not a valid uri, assuming it's http */ + http = g_strdup_printf ("http://%s", uri); + ret = g_app_info_launch_default_for_uri (http, NULL, &error); + g_free (http); + } else { + ret = g_app_info_launch_default_for_uri (uri, NULL, &error); + } - ret = g_app_info_launch_default_for_uri (uri, NULL, &error); if (ret == FALSE) { GtkWidget *dialog; |