# HG changeset patch
# User Olaf Wintermann <olaf.wintermann@gmail.com>
# Date 1716548254 -7200
# Node ID 9f1d309882318d925b1f40a29516ae2d2dd9621b
# Parent  a37c3099b29d904994caab6da6f77bf15a281717
kill broken cgi processes as soon as possible

diff -r a37c3099b29d -r 9f1d30988231 src/server/safs/cgi.c
--- a/src/server/safs/cgi.c	Fri May 24 09:22:38 2024 +0200
+++ b/src/server/safs/cgi.c	Fri May 24 12:57:34 2024 +0200
@@ -569,6 +569,11 @@
     
     handler->debug_finished = TRUE;
     
+    if(handler->result == REQ_ABORTED && handler->process.pid != 0) {
+        log_ereport(LOG_FAILURE, "cgi-send: kill script: %s", handler->path);
+        killpg(handler->process.pid, SIGTERM);
+    }
+    
     if(--handler->events > 0) {
         return 0;
     }
@@ -607,11 +612,6 @@
     }
     */
     
-    if(handler->result == REQ_ABORTED && handler->process.pid != 0) {
-        log_ereport(LOG_FAILURE, "cgi-send: kill script: %s", handler->path);
-        killpg(handler->process.pid, SIGTERM);
-    }
-    
     log_ereport(LOG_DEBUG, "cgi-send: req: %p cgi_close", rq);
     
     int exit_code = cgi_close(&handler->process);