Store removal status separate from dirty

Having removal status stored in the dirty status resulted in removal
status being forgotten when a service was marked as dirty, for instance
when a dependency was updated. This side effect of marke_dirty seems a bit
unexpected and instead of adding exceptions to the logic for when marking
a service dirty - let's separate the two things (dirty and removed) from each
other.

Signed-off-by: Jacques de Laval <Jacques.De.Laval@westermo.com>
This commit is contained in:
Jacques de Laval committed 2021-03-19 16:53:04 +01:00
1 parent d00a53dfbf
commit b3fad1077e
3 files changed
+13 -4

No files matched your search

+2
View File
@@ -1175,6 +1175,8 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file)
else
svc_mark_clean(svc);
svc_enable(svc);
/* for finit native services only, e.g. plugins/hotplug.c */
if (!file)
svc->protect = 1;