core: revert "core: resolve specifier in config_parse_exec()"

This reverts commit cb48dfca6a.

Exec*-settings resolve specifiers twice:
%%U -> config_parse_exec [cb48dfca6a] -> %U -> service_spawn -> 0

Fixes #2637
This commit is contained in:
Evgeny Vereshchagin
2016-02-18 11:55:53 +00:00
parent 252549990f
commit bd1b973fb3
+1 -10
View File
@@ -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;