diff options
Diffstat (limited to 'server/scoreboard.c')
-rw-r--r-- | server/scoreboard.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/server/scoreboard.c b/server/scoreboard.c index c0b0ed0575..a867ba1139 100644 --- a/server/scoreboard.c +++ b/server/scoreboard.c @@ -35,6 +35,7 @@ #include "ap_mpm.h" #include "mpm.h" +#include "mpm_common.h" #include "scoreboard.h" AP_DECLARE_DATA scoreboard *ap_scoreboard_image = NULL; @@ -339,7 +340,8 @@ AP_DECLARE(int) find_child_by_pid(apr_proc_t *pid) ap_mpm_query(AP_MPMQ_MAX_DAEMONS, &max_daemons_limit); for (i = 0; i < max_daemons_limit; ++i) { - if (ap_scoreboard_image->parent[i].pid == pid->pid) { + if (ap_scoreboard_image->parent[i].pid == pid->pid && + ap_in_pid_table(pid->pid)) { return i; } } |