diff options
author | Mykyta Holubakha <hilobakho@gmail.com> | 2016-05-23 19:53:27 +0300 |
---|---|---|
committer | Drew DeVault <ddevault@linode.com> | 2016-05-23 13:09:18 -0400 |
commit | 16dc31f33b201e949f912f993ef927c72a307b88 (patch) | |
tree | 0a1b5404321ba49480cacdb3785ef71863103c24 | |
parent | 290a15ca1bc7640873db6678b82f2c8e070f1748 (diff) | |
download | sway-16dc31f33b201e949f912f993ef927c72a307b88.tar.xz |
Concatenate output cmd args, fixes #654
-rw-r--r-- | sway/commands.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sway/commands.c b/sway/commands.c index 9c5309f9..fbdb5fb8 100644 --- a/sway/commands.c +++ b/sway/commands.c @@ -1557,14 +1557,15 @@ static struct cmd_results *cmd_output(int argc, char **argv) { if (++i >= argc) { return cmd_results_new(CMD_INVALID, "output", "Missing background file."); } - char *src = argv[i]; - if (++i >= argc) { + if (i + 1 >= argc) { return cmd_results_new(CMD_INVALID, "output", "Missing background scaling mode."); } - char *mode = argv[i]; + char *src = join_args(argv + i, argc - i - 1); + char *mode = argv[argc - 1]; if (wordexp(src, &p, 0) != 0) { return cmd_results_new(CMD_INVALID, "output", "Invalid syntax (%s)", src); } + free(src); src = p.we_wordv[0]; if (config->reading && *src != '/') { char *conf = strdup(config->current_config); |