From: Lukas Nykryn Date: Mon, 15 Oct 2012 12:51:27 +0000 (+0200) Subject: systemctl: don't mangle name when it is a path X-Git-Tag: v195~113 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=44386fc156bfa2d623567ff7f7c8f313cfafb9bc;hp=a7a3f28be404875eff20443a0fa8088bcc4c18df systemctl: don't mangle name when it is a path systemctl enable, disable, ... can also accept full path and in this case we don't need to alter it. https://bugzilla.redhat.com/show_bug.cgi?id=866346 --- diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index d1fbb78e6..7d6a6a24f 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -3594,7 +3594,15 @@ static int mangle_names(char **original_names, char ***mangled_names) { i = l; STRV_FOREACH(name, original_names) { - *i = unit_name_mangle(*name); + + /* When enabling units qualified path names are OK, + * too, hence allow them explicitly. */ + + if (is_path(*name)) + *i = strdup(*name); + else + *i = unit_name_mangle(*name); + if (!*i) { strv_free(l); return log_oom();