diff options
Diffstat (limited to 'server/mpm/threaded/threaded.c')
-rw-r--r-- | server/mpm/threaded/threaded.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/server/mpm/threaded/threaded.c b/server/mpm/threaded/threaded.c index ad2274d650..4a1498f6ed 100644 --- a/server/mpm/threaded/threaded.c +++ b/server/mpm/threaded/threaded.c @@ -1129,7 +1129,11 @@ static void server_main_loop(int remaining_children_to_start) ap_wait_or_timeout(&exitwhy, &status, &pid, pconf); if (pid.pid != -1) { - ap_process_child_status(&pid, exitwhy, status); + if (ap_process_child_status(&pid, exitwhy, status) != 0) { + /* if we keep this MPM, somebody fix handling of APEXIT_CHILDFATAL */ + exit(1); + } + /* non-fatal death... note that it's gone in the scoreboard. */ child_slot = find_child_by_pid(&pid); if (child_slot >= 0) { |