diff options
Diffstat (limited to 'src/core/load-fragment.c')
-rw-r--r-- | src/core/load-fragment.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index 4ebe92fd45..44f00a3046 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -3749,7 +3749,7 @@ int config_parse_exec_directories( if (path_startswith(k, "private")) { log_syntax(unit, LOG_ERR, filename, line, 0, - "%s= path can't be 'private', ingoring assignment: %s", lvalue, word); + "%s= path can't be 'private', ignoring assignment: %s", lvalue, word); continue; } @@ -4254,6 +4254,12 @@ int config_parse_pid_file( assert(rvalue); assert(u); + if (isempty(rvalue)) { + /* An empty assignment removes already set value. */ + *s = mfree(*s); + return 0; + } + r = unit_full_printf(u, rvalue, &k); if (r < 0) { log_syntax(unit, LOG_ERR, filename, line, r, "Failed to resolve unit specifiers in '%s', ignoring: %m", rvalue); |