diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2013-01-23 14:12:15 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-01-24 19:36:47 -0500 |
commit | 6d594baa3fa3a361efc2a4c1da3557fc4eba960d (patch) | |
tree | f16d650b44df31a3dd6fae30911f4b753424ce17 /src/core | |
parent | c8503a3e16bb487e86682c9bee9a60f24b9e40d3 (diff) |
service: really stop watchdog timer when stopping
For services without ExecStop= the state SERVICE_STOP is never entered. as
a result the watchdog timer is not stopped and the service is restarted (if
it is configuered to restart).
Stopping the watchdog timer for SERVICE_STOP_SIGTERM as well fixes this.
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/service.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/service.c b/src/core/service.c index ee5a1a41e5..593946e517 100644 --- a/src/core/service.c +++ b/src/core/service.c @@ -1550,7 +1550,7 @@ static void service_set_state(Service *s, ServiceState state) { service_connection_unref(s); } - if (state == SERVICE_STOP) + if (state == SERVICE_STOP || state == SERVICE_STOP_SIGTERM) service_stop_watchdog(s); /* For the inactive states unit_notify() will trim the cgroup, |