From cf1d0302aeaf4e44a6a643fb41e5525fdd04b1d5 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 12 Feb 2015 18:58:43 +0100 Subject: exec: also evaluate working_directory_missing_ok when not applying chroots --- src/core/execute.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/core/execute.c b/src/core/execute.c index 1f6072c6ab..340b8000d4 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -1626,13 +1626,14 @@ static int exec_child( _cleanup_free_ char *d = NULL; if (asprintf(&d, "%s/%s", - context->root_directory ? context->root_directory : "", - context->working_directory ? context->working_directory : "") < 0) { + context->root_directory ?: "", + context->working_directory ?: "") < 0) { *exit_status = EXIT_MEMORY; return -ENOMEM; } - if (chdir(d) < 0) { + if (chdir(d) < 0 && + !context->working_directory_missing_ok) { *exit_status = EXIT_CHDIR; return -errno; } -- cgit v1.2.3-54-g00ecf