blob: a32999535ef0ff57b3cd2b4f944acb52600c0276 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
diff -uNr apache_1.3.28.orig/src/main/alloc.c apache_1.3.28/src/main/alloc.c
--- apache_1.3.28.orig/src/main/alloc.c 2003-06-20 11:05:40.000000000 -0400
+++ apache_1.3.28/src/main/alloc.c 2003-09-26 23:48:14.000000000 -0400
@@ -2858,13 +2858,14 @@
for (p = procs; p; p = p->next) {
if ((p->kill_how == kill_after_timeout)
|| (p->kill_how == kill_only_once)) {
- /* Subprocess may be dead already. Only need the timeout if not. */
- if (ap_os_kill(p->pid, SIGTERM) == -1) {
- p->kill_how = kill_never;
- }
- else {
- need_timeout = 1;
- }
+ /*
+ * This is totally bogus, but seems to be the
+ * only portable (as in reliable) way to accomplish
+ * this. Note that this implies an unavoidable
+ * delay.
+ */
+ ap_os_kill(p->pid, SIGTERM);
+ need_timeout = 1;
}
else if (p->kill_how == kill_always) {
kill(p->pid, SIGKILL);
|