]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
more cleanus of pid_table for killed/waited-for kiddies
authorJim Jagielski <jim@apache.org>
Fri, 1 Jun 2007 22:02:48 +0000 (22:02 +0000)
committerJim Jagielski <jim@apache.org>
Fri, 1 Jun 2007 22:02:48 +0000 (22:02 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@543634 13f79535-47bb-0310-9956-ffa450edef68

src/main/http_main.c

index 845999747f11bc1573575384303c8880d24e8e88..00afe7b2aa96a10ef5001e91b97d4bbc2ba476cb 100644 (file)
@@ -2829,6 +2829,7 @@ static void reclaim_child_processes(int terminate)
            waitret = waitpid(pid, &status, WNOHANG);
            if (waitret == pid || waitret == -1) {
                ap_scoreboard_image->parent[i].pid = 0;
+                unset_pid_table(pid);
                continue;
            }
            ++not_dead_yet;
@@ -5173,6 +5174,7 @@ static void perform_idle_server_maintenance(void)
                     pid = ps->pid;
                     if (in_pid_table(pid)) {
                         kill(pid, SIG_TIMEOUT_KILL);
+                        unset_pid_table(pid);
                     }
                     else {
                         ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, server_conf,