From a7c28c4977d4dd3c785e3bbb11030ca372204e47 Mon Sep 17 00:00:00 2001 From: Tim Kourt Date: Fri, 9 Nov 2018 13:43:15 -0800 Subject: [PATCH] client: Fix display of the quoted params --- client/display.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/client/display.c b/client/display.c index 0b7f1b6b..b57a0e20 100644 --- a/client/display.c +++ b/client/display.c @@ -185,8 +185,23 @@ void display_refresh_set_cmd(const char *family, const char *entity, L_AUTO_FREE_VAR(char *, args); char *prompt; - for (i = 0; i < argc; i++) - l_string_append_printf(buf, "'%s' ", argv[i]); + for (i = 0; i < argc; i++) { + bool needs_quotes = false; + char *p = argv[i]; + + for (p = argv[i]; *p != '\0'; p++) { + if (*p != ' ') + continue; + + needs_quotes = true; + break; + } + + if (needs_quotes) + l_string_append_printf(buf, "\"%s\" ", argv[i]); + else + l_string_append_printf(buf, "%s ", argv[i]); + } args = l_string_unwrap(buf);