diff options
author | Nick Schermer <nick@xfce.org> | 2009-07-10 18:38:05 +0000 |
---|---|---|
committer | Nick Schermer <nick@xfce.org> | 2009-07-10 18:38:05 +0000 |
commit | 6af5a64f0a5b35551ad819e68cc9e3b91d44c7cd (patch) | |
tree | 815938e72f2b5af23c9ccc24c2c5071f9d638f94 /exo-open | |
parent | f578ac2d91d63241af2db9987e6b94514f5d183e (diff) | |
download | exo-6af5a64f0a5b35551ad819e68cc9e3b91d44c7cd.tar.gz |
Make run in terminal in xfrun4 work again.
(Old svn revision: 30252)
Diffstat (limited to 'exo-open')
-rw-r--r-- | exo-open/main.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/exo-open/main.c b/exo-open/main.c index 96bd1ba..f87cc49 100644 --- a/exo-open/main.c +++ b/exo-open/main.c @@ -36,6 +36,7 @@ #include <exo/exo.h> + /** * For testing this code the following commands should work: * @@ -43,6 +44,8 @@ * exo-open http://xfce.org * exo-open --launch TerminalEmulator ./script.sh 'something with a space' 'nospace' (bug #5132). * exo-open --launch TerminalEmulator ssh -l username some.host.com + * xfterm4 -e ssh -l ssh -l username some.host.com (bug #5301, this generates line below) + * exo-open --launch TerminalEmulator 'ssh -l username some.host.com' **/ @@ -163,8 +166,10 @@ main (int argc, char **argv) if (i > 1) join = g_string_append_c (join, ' '); - /* only quote arguments with spaces */ - if (strchr (argv[i], ' ') != NULL) + /* only quote arguments with spaces if there are multiple + * arguments to be merged, this is a bit of magic to make + * common cares work property, see sample above with xfrun4 */ + if (argc > 2 && strchr (argv[i], ' ') != NULL) { quoted = g_shell_quote (argv[i]); join = g_string_append (join, quoted); |