[systemd-commits] src/core

Lennart Poettering lennart at kemper.freedesktop.org
Thu Feb 12 09:59:27 PST 2015


 src/core/execute.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

New commits:
commit cf1d0302aeaf4e44a6a643fb41e5525fdd04b1d5
Author: Lennart Poettering <lennart at poettering.net>
Date:   Thu Feb 12 18:58:43 2015 +0100

    exec: also evaluate working_directory_missing_ok when not applying chroots

diff --git a/src/core/execute.c b/src/core/execute.c
index 1f6072c..340b800 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;
                 }



More information about the systemd-commits mailing list