mirror of
https://github.com/systemd/systemd.git
synced 2024-11-01 09:21:26 +03:00
core: failure to spawn ExecStartPost should not run ExecStop
Failure to spawn ExecStartPost was being handled differently to e.g. EXIT_FAILURE returned by ExecStartPost. It looks like this was an oversight. Fix to match documented behaviour. `man systemd.service`: > Note that if any of the commands specified in ExecStartPre=, ExecStart=, > or ExecStartPost= fail (and are not prefixed with "-", see above) or time > out before the service is fully up, execution continues with commands > specified in ExecStopPost=, the commands in ExecStop= are skipped.
This commit is contained in:
parent
79aafbd122
commit
4cd9fa8176
@ -2087,7 +2087,7 @@ static void service_run_next_control(Service *s) {
|
||||
fail:
|
||||
log_unit_warning_errno(UNIT(s), r, "Failed to run next control task: %m");
|
||||
|
||||
if (IN_SET(s->state, SERVICE_START_PRE, SERVICE_STOP))
|
||||
if (IN_SET(s->state, SERVICE_START_PRE, SERVICE_START_POST, SERVICE_STOP))
|
||||
service_enter_signal(s, SERVICE_STOP_SIGTERM, SERVICE_FAILURE_RESOURCES);
|
||||
else if (s->state == SERVICE_STOP_POST)
|
||||
service_enter_dead(s, SERVICE_FAILURE_RESOURCES, true);
|
||||
|
Loading…
Reference in New Issue
Block a user