diff --git a/src/core/unit.c b/src/core/unit.c index ab057ada87..359bd62df9 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -1491,6 +1491,9 @@ int unit_load(Unit *u) { return 0; if (u->transient_file) { + /* Finalize transient file: if this is a transient unit file, as soon as we reach unit_load() the setup + * is complete, hence let's synchronize the unit file we just wrote to disk. */ + r = fflush_and_check(u->transient_file); if (r < 0) goto fail; diff --git a/src/core/unit.h b/src/core/unit.h index f159233df9..22f33aaae3 100644 --- a/src/core/unit.h +++ b/src/core/unit.h @@ -316,6 +316,7 @@ typedef struct Unit { /* Is this a unit that is always running and cannot be stopped? */ bool perpetual; + /* Booleans indicating membership of this unit in the various queues */ bool in_load_queue:1; bool in_dbus_queue:1; bool in_cleanup_queue:1;