diff options
author | Nicolas Viennot <nicolas@viennot.biz> | 2016-03-27 02:06:56 -0400 |
---|---|---|
committer | Nicolas Viennot <nicolas@viennot.biz> | 2016-03-27 02:06:56 -0400 |
commit | 37c71cfe1587ffaea76776714bd38abe28697e83 (patch) | |
tree | f9e5dff70a07f42daf17374c05bd749c20f7b0e3 | |
parent | 474487c33e864f9cabc91fc627f9d64160c03a8f (diff) |
Escape sent commands
-rw-r--r-- | arguments.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arguments.c b/arguments.c index f7f8f737..bcd2cd42 100644 --- a/arguments.c +++ b/arguments.c @@ -177,20 +177,34 @@ args_print(struct args *args) args_print_add(&buf, &len, " -%c ", entry->flag); else args_print_add(&buf, &len, "-%c ", entry->flag); +#ifdef TMATE + if (strchr(entry->value, '\'') != NULL) + args_print_add(&buf, &len, "\"%s\"", entry->value); + else + args_print_add(&buf, &len, "'%s'", entry->value); +#else if (strchr(entry->value, ' ') != NULL) args_print_add(&buf, &len, "\"%s\"", entry->value); else args_print_add(&buf, &len, "%s", entry->value); +#endif } /* And finally the argument vector. */ for (i = 0; i < args->argc; i++) { if (*buf != '\0') args_print_add(&buf, &len, " "); +#ifdef TMATE + if (strchr(args->argv[i], '\'') != NULL) + args_print_add(&buf, &len, "\"%s\"", args->argv[i]); + else + args_print_add(&buf, &len, "'%s'", args->argv[i]); +#else if (strchr(args->argv[i], ' ') != NULL) args_print_add(&buf, &len, "\"%s\"", args->argv[i]); else args_print_add(&buf, &len, "%s", args->argv[i]); +#endif } return (buf); |