summaryrefslogtreecommitdiff
path: root/src/core/job.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-04-09 18:32:21 +0200
committerLennart Poettering <lennart@poettering.net>2015-04-09 18:32:21 +0200
commit019c7fba754f74909bdb8bbbbbbe529082928a95 (patch)
tree9b53a83d39a2b128e46065625fb6a298942e90f8 /src/core/job.c
parentab51b943d42eb6a5e4c6e26cd3c641d4e604bd1c (diff)
util: add shell_maybe_quote() call for preparing a string for shell cmdline inclusion
If necessary the passed string is enclosed in "", and all special characters escapes. This also ports over usage in bus-util.c and job.c to use this, instead of a incorrect local implementation that forgets to properly escape.
Diffstat (limited to 'src/core/job.c')
-rw-r--r--src/core/job.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/core/job.c b/src/core/job.c
index bd63eb16ba..0230f9316b 100644
--- a/src/core/job.c
+++ b/src/core/job.c
@@ -674,15 +674,13 @@ static void job_print_status_message(Unit *u, JobType t, JobResult result) {
break;
case JOB_FAILED: {
- bool quotes;
+ _cleanup_free_ char *quoted = NULL;
- quotes = chars_intersect(u->id, SHELL_NEED_QUOTES);
+ quoted = shell_maybe_quote(u->id);
manager_flip_auto_status(u->manager, true);
unit_status_printf(u, ANSI_HIGHLIGHT_RED_ON "FAILED" ANSI_HIGHLIGHT_OFF, format);
- manager_status_printf(u->manager, STATUS_TYPE_NORMAL, NULL,
- "See \"systemctl status %s%s%s\" for details.",
- quotes ? "'" : "", u->id, quotes ? "'" : "");
+ manager_status_printf(u->manager, STATUS_TYPE_NORMAL, NULL, "See 'systemctl status %s' for details.", strna(quoted));
break;
}