diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-04-13 04:51:38 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-04-13 04:51:38 +0200 |
commit | 9ea9a0c85c427397e1f1f4bb1f4d3192aab5987e (patch) | |
tree | e73bee020b5b21c0eb8d22a19677198e213286f4 | |
parent | 7b683879838523032604a2a5a95142956f7b8a88 (diff) |
unit: allow state change from running to restarting
-rw-r--r-- | service.c | 3 | ||||
-rw-r--r-- | unit.c | 2 |
2 files changed, 2 insertions, 3 deletions
@@ -1461,11 +1461,12 @@ static void service_enter_restart(Service *s) { int r; assert(s); + service_enter_dead(s, true, false); + if ((r = manager_add_job(UNIT(s)->meta.manager, JOB_START, UNIT(s), JOB_FAIL, false, NULL)) < 0) goto fail; log_debug("%s scheduled restart job.", unit_id(UNIT(s))); - service_enter_dead(s, true, false); return; fail: @@ -850,8 +850,6 @@ void unit_notify(Unit *u, UnitActiveState os, UnitActiveState ns) { assert(u); assert(os < _UNIT_ACTIVE_STATE_MAX); assert(ns < _UNIT_ACTIVE_STATE_MAX); - assert(!(os == UNIT_ACTIVE && ns == UNIT_ACTIVATING)); - assert(!(os == UNIT_INACTIVE && ns == UNIT_DEACTIVATING)); /* Note that this is called for all low-level state changes, * even if they might map to the same high-level |