From: Dennis Sheil Date: Fri, 18 Mar 2011 05:30:34 +0000 (-0400) Subject: Use g_app_info_launch_uris() instead of g_app_info_launch() X-Git-Tag: EVINCE_2_91_92~14 X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=commitdiff_plain;h=2bcc52f832a05b0d4145940cb501143f2530ad56;p=evince.git Use g_app_info_launch_uris() instead of g_app_info_launch() The g_app_info_launch() call munges the URI. Fixes bug #644604. --- diff --git a/shell/ev-application.c b/shell/ev-application.c index 0c65eec2..21f7a3a2 100644 --- a/shell/ev-application.c +++ b/shell/ev-application.c @@ -283,18 +283,20 @@ ev_spawn (const char *uri, break; } - g_string_append_printf (cmd, " %s", uri); - cmdline = g_string_free (cmd, FALSE); app = g_app_info_create_from_commandline (cmdline, NULL, 0, &error); if (app != NULL) { + GList uri_list; + ctx = gdk_display_get_app_launch_context (gdk_screen_get_display (screen)); gdk_app_launch_context_set_screen (ctx, screen); gdk_app_launch_context_set_timestamp (ctx, timestamp); - g_app_info_launch (app, NULL, - G_APP_LAUNCH_CONTEXT (ctx), &error); + uri_list.data = (gchar *)uri; + uri_list.prev = uri_list.next = NULL; + g_app_info_launch_uris (app, &uri_list, + G_APP_LAUNCH_CONTEXT (ctx), &error); g_object_unref (app); g_object_unref (ctx);