summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/systemctl/systemctl.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index d1fbb78e63..7d6a6a24f3 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();