diff options
author | Evgeny Vereshchagin <evvers@ya.ru> | 2016-02-17 22:32:36 +0000 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-05-25 11:56:39 -0400 |
commit | ed045d8dc960f6e32abd79b16cc7f18304e6bd94 (patch) | |
tree | c99507a4258df073eec9baa52e9e478cf82fd4a8 /src/core | |
parent | 9469405190da99da92d4a50479d641029d2bb733 (diff) |
core: revert "core: resolve specifier in config_parse_exec()"systemd/v229-3
This reverts commit cb48dfca6a8bc15d9081651001a16bf51e03838a.
Exec*-settings resolve specifiers twice:
%%U -> config_parse_exec [cb48dfca6a8] -> %U -> service_spawn -> 0
Fixes #2637
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/load-fragment.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index b3dec7b8cc..8804b3ac41 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -574,9 +574,7 @@ int config_parse_exec( void *data, void *userdata) { - _cleanup_free_ char *cmd = NULL; ExecCommand **e = data; - Unit *u = userdata; const char *p; bool semicolon; int r; @@ -585,7 +583,6 @@ int config_parse_exec( assert(lvalue); assert(rvalue); assert(e); - assert(u); e += ltype; rvalue += strspn(rvalue, WHITESPACE); @@ -596,13 +593,7 @@ int config_parse_exec( return 0; } - r = unit_full_printf(u, rvalue, &cmd); - if (r < 0) { - log_syntax(unit, LOG_ERR, filename, line, r, "Failed to resolve unit specifiers on %s, ignoring: %m", rvalue); - return 0; - } - - p = cmd; + p = rvalue; do { _cleanup_free_ char *path = NULL, *firstword = NULL; bool separate_argv0 = false, ignore = false; |