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,
if (strv_find(tags, "WATCHDOG=1")) {
log_debug_unit(u->id,
"%s: got WATCHDOG=1", u->id);
- service_reset_watchdog(s);
+ if (dual_timestamp_is_set(&s->watchdog_timestamp))
+ service_reset_watchdog(s);
}
/* Notify clients about changed status or main pid */