X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Funit.c;h=ee8e607c27bf30f300883ebfa25f7973184c1569;hb=c529695e7a30b300fdaa61ace4a8a4ed0e94ad1c;hp=2f95737da00a8a41d7101580c04b355c1519776b;hpb=63c372cb9df3bee01e3bf8cd7f96f336bddda846;p=elogind.git diff --git a/src/core/unit.c b/src/core/unit.c index 2f95737da..ee8e607c2 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include #include #include @@ -1653,7 +1653,7 @@ static void unit_check_binds_to(Unit *u) { if (!stop) return; - log_unit_info(u->id, "Unit %s is bound to inactive service. Stopping, too.", u->id); + log_unit_info(u->id, "Unit %s is bound to inactive unit. Stopping, too.", u->id); /* A unit we need to run is gone. Sniff. Let's stop this. */ manager_add_job(u->manager, JOB_STOP, u, JOB_FAIL, true, NULL, NULL); @@ -3178,6 +3178,10 @@ int unit_patch_contexts(Unit *u) { r = get_home_dir(&ec->working_directory); if (r < 0) return r; + + /* Allow user services to run, even if the + * home directory is missing */ + ec->working_directory_missing_ok = true; } if (u->manager->running_as == SYSTEMD_USER &&