--- xfce4-terminal-0.2.6.orig/helpers/opera-browser.desktop.in +++ xfce4-terminal-0.2.6/helpers/opera-browser.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=opera; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B -remote "openURL(%u,new-window)" || %B "%u" +X-Terminal-Command=%B -remote openURL\(%u,new-window\) || %B %u --- xfce4-terminal-0.2.6.orig/helpers/evolution.desktop.in +++ xfce4-terminal-0.2.6/helpers/evolution.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=evolution-2.2;evolution-2.0;evolution-1.6;evolution-1.5;evolution-1.4;evolution; X-Terminal-Category=MailReader -X-Terminal-Command=%B "mailto:%u" +X-Terminal-Command=%B mailto:%u --- xfce4-terminal-0.2.6.orig/helpers/mozilla-mailer.desktop.in +++ xfce4-terminal-0.2.6/helpers/mozilla-mailer.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=mozilla;mozilla-gtk2;mozilla-gtk; X-Terminal-Category=MailReader -X-Terminal-Command=%B -remote "mailto(%u)" || %B -compose "mailto:%u" +X-Terminal-Command=%B -remote mailto\(%u\) || %B -compose mailto:%u --- xfce4-terminal-0.2.6.orig/helpers/exo-open-mailer.desktop.in +++ xfce4-terminal-0.2.6/helpers/exo-open-mailer.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=exo-open X-Terminal-Category=MailReader -X-Terminal-Command=%B --launch MailReader "%u" +X-Terminal-Command=%B --launch MailReader %u --- xfce4-terminal-0.2.6.orig/helpers/kmail.desktop.in +++ xfce4-terminal-0.2.6/helpers/kmail.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=kmail; X-Terminal-Category=MailReader -X-Terminal-Command=%B "%u" +X-Terminal-Command=%B %u --- xfce4-terminal-0.2.6.orig/helpers/exo-open-browser.desktop.in +++ xfce4-terminal-0.2.6/helpers/exo-open-browser.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=exo-open X-Terminal-Category=WebBrowser -X-Terminal-Command=%B --launch WebBrowser "%u" +X-Terminal-Command=%B --launch WebBrowser %u --- xfce4-terminal-0.2.6.orig/helpers/epiphany.desktop.in +++ xfce4-terminal-0.2.6/helpers/epiphany.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=epiphany; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B "%u" +X-Terminal-Command=%B %u --- xfce4-terminal-0.2.6.orig/helpers/galeon.desktop.in +++ xfce4-terminal-0.2.6/helpers/galeon.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=galeon; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B "%u" +X-Terminal-Command=%B %u --- xfce4-terminal-0.2.6.orig/helpers/konqueror.desktop.in +++ xfce4-terminal-0.2.6/helpers/konqueror.desktop.in @@ -5,6 +5,6 @@ Type=Application X-Terminal-Binaries=konqueror; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B "%u" +X-Terminal-Command=%B %u --- xfce4-terminal-0.2.6.orig/helpers/balsa.desktop.in +++ xfce4-terminal-0.2.6/helpers/balsa.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=balsa X-Terminal-Category=MailReader -X-Terminal-Command=%B -m "mailto:%u" +X-Terminal-Command=%B -m mailto:%u --- xfce4-terminal-0.2.6.orig/helpers/sylpheed-claws.desktop.in +++ xfce4-terminal-0.2.6/helpers/sylpheed-claws.desktop.in @@ -7,4 +7,4 @@ StartupNotify=true X-Terminal-Binaries=sylpheed-claws; X-Terminal-Category=MailReader -X-Terminal-Command=%B --compose "%u" +X-Terminal-Command=%B --compose %u --- xfce4-terminal-0.2.6.orig/helpers/sensible-browser.desktop.in +++ xfce4-terminal-0.2.6/helpers/sensible-browser.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=sensible-browser X-Terminal-Category=WebBrowser -X-Terminal-Command=%B "%u" +X-Terminal-Command=%B %u --- xfce4-terminal-0.2.6.orig/helpers/firefox.desktop.in +++ xfce4-terminal-0.2.6/helpers/firefox.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=firefox;firefox-gtk2;firefox-gtk;mozilla-firefox; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B -remote "openURL(%u)" || %B "%u" +X-Terminal-Command=%B -remote openURL\(%u\) || %B %u --- xfce4-terminal-0.2.6.orig/helpers/mozilla-browser.desktop.in +++ xfce4-terminal-0.2.6/helpers/mozilla-browser.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=mozilla;mozilla-gtk2;mozilla-gtk; X-Terminal-Category=WebBrowser -X-Terminal-Command=%B -remote "openURL(%u,new-window)" || %B "%u" +X-Terminal-Command=%B -remote openURL\(%u,new-window\) || %B %u --- xfce4-terminal-0.2.6.orig/helpers/opera-mailer.desktop.in +++ xfce4-terminal-0.2.6/helpers/opera-mailer.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=opera; X-Terminal-Category=MailReader -X-Terminal-Command=%B -remote "openURL(mailto:%u)" || %B "mailto:%u" +X-Terminal-Command=%B -remote openURL\(mailto:%u\) || %B mailto:%u --- xfce4-terminal-0.2.6.orig/helpers/mutt.desktop.in +++ xfce4-terminal-0.2.6/helpers/mutt.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=mutt; X-Terminal-Category=MailReader -X-Terminal-Command=Terminal -x %B "%u" +X-Terminal-Command=Terminal -x %B %u --- xfce4-terminal-0.2.6.orig/helpers/thunderbird.desktop.in +++ xfce4-terminal-0.2.6/helpers/thunderbird.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=thunderbird;thunderbird-gtk2;thunderbird-gtk;mozilla-thunderbird; X-Terminal-Category=MailReader -X-Terminal-Command=%B -remote "mailto(%u)" || %B -compose "mailto:%u" +X-Terminal-Command=%B -remote mailto\(%u\) || %B -compose mailto:%u --- xfce4-terminal-0.2.6.orig/helpers/lynx.desktop.in +++ xfce4-terminal-0.2.6/helpers/lynx.desktop.in @@ -5,4 +5,4 @@ Type=Application X-Terminal-Binaries=lynx; X-Terminal-Category=WebBrowser -X-Terminal-Command=Terminal -x %B "%u" +X-Terminal-Command=Terminal -x %B %u --- xfce4-terminal-0.2.6.orig/terminal/terminal-helper.c +++ xfce4-terminal-0.2.6/terminal/terminal-helper.c @@ -349,6 +349,7 @@ gchar *argv[4]; gchar *command; gchar *t; + gchar *escaped; guint n; g_return_if_fail (TERMINAL_IS_HELPER (helper)); @@ -359,6 +360,8 @@ if (s[0] == '%' && g_ascii_tolower (s[1]) == 'u') ++n; + escaped = g_shell_quote (uri); + if (n > 0) { command = g_new (gchar, strlen (helper->command) + n * strlen (uri) + 1); @@ -366,7 +369,7 @@ { if (s[0] == '%' && g_ascii_tolower (s[1]) == 'u') { - for (u = uri; *u != '\0'; ) + for (u = escaped; *u != '\0'; ) *t++ = *u++; s += 2; } @@ -379,9 +382,11 @@ } else { - command = g_strconcat (helper->command, " ", uri, NULL); + command = g_strconcat (helper->command, " ", escaped, NULL); } + g_free (escaped); + argv[0] = "/bin/sh"; argv[1] = "-c"; argv[2] = command;