--- a/pidgin/gtknotify.c Mon Jan 13 19:59:51 2014 -0800
+++ b/pidgin/gtknotify.c Mon Jan 13 21:43:50 2014 -0800
@@ -1280,12 +1280,10 @@
- gchar *uri_escaped, *uri_custom = NULL;
+ gchar *uri_custom = NULL; GSList *argv = NULL, *argv_remote = NULL;
gchar **usercmd_argv = NULL;
- uri_escaped = g_uri_escape_string(uri, ":/%#,+", FALSE);
web_browser = purple_prefs_get_string(PIDGIN_PREFS_ROOT
place = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/browsers/place");
@@ -1298,7 +1296,7 @@
argv = g_slist_append(argv, "xdg-open");
- argv = g_slist_append(argv, uri_escaped);
+ argv = g_slist_append(argv, (gpointer)uri); } else if (purple_running_osx() == TRUE) {
argv = g_slist_append(argv, "open");
argv = g_slist_append(argv, (gpointer)uri);
@@ -1315,10 +1313,10 @@
argv = g_slist_append(argv, (gpointer)uri);
} else if (!strcmp(web_browser, "xdg-open")) {
argv = g_slist_append(argv, "xdg-open");
- argv = g_slist_append(argv, uri_escaped);
+ argv = g_slist_append(argv, (gpointer)uri); } else if (!strcmp(web_browser, "gnome-open")) {
argv = g_slist_append(argv, "gnome-open");
- argv = g_slist_append(argv, uri_escaped);
+ argv = g_slist_append(argv, (gpointer)uri); } else if (!strcmp(web_browser, "kfmclient")) {
argv = g_slist_append(argv, "kfmclient");
argv = g_slist_append(argv, "openURL");
@@ -1333,18 +1331,15 @@
!strcmp(web_browser, "seamonkey"))
argv = g_slist_append(argv, (gpointer)web_browser);
- argv = g_slist_append(argv, uri_escaped);
+ argv = g_slist_append(argv, (gpointer)uri); g_assert(uri_custom == NULL);
if (place == PIDGIN_BROWSER_NEW_WINDOW) {
- uri_custom = g_strdup_printf("openURL(%s,new-window)",
+ uri_custom = g_strdup_printf("openURL(%s,new-window)", uri); } else if (place == PIDGIN_BROWSER_NEW_TAB) {
- uri_custom = g_strdup_printf("openURL(%s,new-tab)",
+ uri_custom = g_strdup_printf("openURL(%s,new-tab)", uri); } else if (place == PIDGIN_BROWSER_CURRENT) {
- uri_custom = g_strdup_printf("openURL(%s)",
+ uri_custom = g_strdup_printf("openURL(%s)", uri); if (uri_custom != NULL) {
@@ -1373,11 +1368,9 @@
argv = g_slist_append(argv, (gpointer)uri);
if (place == PIDGIN_BROWSER_NEW_WINDOW) {
- uri_custom = g_strdup_printf("openURL(%s,new-window)",
+ uri_custom = g_strdup_printf("openURL(%s,new-window)", uri); } else if (place == PIDGIN_BROWSER_CURRENT) {
- uri_custom = g_strdup_printf("openURL(%s)",
+ uri_custom = g_strdup_printf("openURL(%s)", uri); @@ -1433,7 +1426,6 @@
purple_notify_error(NULL, NULL, _("Unable to open URL"),
_("The 'Manual' browser command has been "
"chosen, but no command has been set."));
@@ -1444,7 +1436,6 @@
"the 'Manual' browser command seems invalid."),
error ? error->message : NULL);
@@ -1456,8 +1447,7 @@
- uri_custom = purple_strreplace(cmd_part, "%s",
+ uri_custom = purple_strreplace(cmd_part, "%s", uri); argv = g_slist_append(argv, uri_custom);
@@ -1466,7 +1456,7 @@
* wanted the URL tacked on to the end of the command.
- argv = g_slist_append(argv, uri_escaped);
+ argv = g_slist_append(argv, (gpointer)uri); if (argv_remote != NULL) {
@@ -1477,7 +1467,6 @@
uri_command(argv, FALSE);
g_strfreev(usercmd_argv);
g_slist_free(argv_remote);