chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
execute: when parsing ConrolGroup= replace wildcards
[elogind.git]
/
src
/
load-fragment.c
diff --git
a/src/load-fragment.c
b/src/load-fragment.c
index 0c2ef916522350a70b82c1c0291a6b85e5aba0a2..3146186843f166fd8a76a70b7a379255563fcae8 100644
(file)
--- a/
src/load-fragment.c
+++ b/
src/load-fragment.c
@@
-1071,10
+1071,23
@@
static int config_parse_cgroup(
char *state;
FOREACH_WORD_QUOTED(w, l, rvalue, state) {
char *state;
FOREACH_WORD_QUOTED(w, l, rvalue, state) {
- char *t;
+ char *t
, *k
;
int r;
int r;
- if (!(t = cunescape_length(w, l)))
+ t = strndup(w, l);
+ if (!t)
+ return -ENOMEM;
+
+ k = unit_full_printf(u, t);
+ free(t);
+
+ if (!k)
+ return -ENOMEM;
+
+ t = cunescape(k);
+ free(k);
+
+ if (!t)
return -ENOMEM;
r = unit_add_cgroup_from_text(u, t);
return -ENOMEM;
r = unit_add_cgroup_from_text(u, t);