X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Ftimer.c;h=1477aa5256d622412180fb9ffdb02e0f17a2329d;hp=065e9c14dbf7905f3df603f8922351305425f1b3;hb=7a41c61168632501489a4d054619b86f529a02e7;hpb=ead8e4788ee31bbdc38b4cd3c6e71c8a95bbc95a diff --git a/src/timer.c b/src/timer.c index 065e9c14d..1477aa525 100644 --- a/src/timer.c +++ b/src/timer.c @@ -78,9 +78,13 @@ static int timer_add_default_dependencies(Timer *t) { assert(t); - if (t->meta.manager->running_as == MANAGER_SYSTEM) + if (t->meta.manager->running_as == MANAGER_SYSTEM) { + if ((r = unit_add_dependency_by_name(UNIT(t), UNIT_BEFORE, SPECIAL_BASIC_TARGET, NULL, true)) < 0) + return r; + if ((r = unit_add_two_dependencies_by_name(UNIT(t), UNIT_AFTER, UNIT_REQUIRES, SPECIAL_SYSINIT_TARGET, NULL, true)) < 0) return r; + } return unit_add_two_dependencies_by_name(UNIT(t), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_SHUTDOWN_TARGET, NULL, true); } @@ -148,7 +152,7 @@ static void timer_set_state(Timer *t, TimerState state) { timer_state_to_string(old_state), timer_state_to_string(state)); - unit_notify(UNIT(t), state_translation_table[old_state], state_translation_table[state]); + unit_notify(UNIT(t), state_translation_table[old_state], state_translation_table[state], true); } static void timer_enter_waiting(Timer *t, bool initial);