about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeah Neukirchen <leah@vuxu.org>2024-01-18 20:44:33 +0100
committerLeah Neukirchen <leah@vuxu.org>2024-01-18 20:44:33 +0100
commit06743b7b4227a8613315eccf1a54c97e12d22fbf (patch)
treeac4d54a7bcbc6b111eb07e2f11b88fa2e692afca
parent5cd99eb6436bc25a5b0c5edff0623090263dabdf (diff)
downloadnitro-06743b7b4227a8613315eccf1a54c97e12d22fbf.tar.gz
nitro-06743b7b4227a8613315eccf1a54c97e12d22fbf.tar.xz
nitro-06743b7b4227a8613315eccf1a54c97e12d22fbf.zip
step from PROC_UP to PROC_RESTART on EVNT_EXITED
This usually makes no difference, but when the service is killed, we
want to catch the timeout for ./finish.
-rw-r--r--nitro.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/nitro.c b/nitro.c
index b74b096..24d5464 100644
--- a/nitro.c
+++ b/nitro.c
@@ -654,8 +654,12 @@ process_step(int i, enum process_events ev)
 		services[i].timeout = 0;
 		services[i].deadline = 0;
 		switch (services[i].state) {
-		case PROC_STARTING:
 		case PROC_UP:
+			services[i].state = PROC_RESTART;
+			proc_finish(i);
+			break;
+
+		case PROC_STARTING:
 		case PROC_RESTART:
 		case PROC_SHUTDOWN:
 		case PROC_FATAL: