]> granicus.if.org Git - apache/commitdiff
get the last worker in a given child initialized properly
authorJeff Trawick <trawick@apache.org>
Thu, 22 Feb 2001 21:35:38 +0000 (21:35 +0000)
committerJeff Trawick <trawick@apache.org>
Thu, 22 Feb 2001 21:35:38 +0000 (21:35 +0000)
by getting a new pool for its own proc_info structure instead
of overlaying the pool in the proc_info structure for the
prior thread

we also move through the SERVER_STARTING scoreboard state for this
worker, though this isn't as important as with the other workers,
for which a new thread must be created (potentially time consuming)

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88280 13f79535-47bb-0310-9956-ffa450edef68

server/mpm/threaded/threaded.c

index 7fbb40361fc2a828ee65ca06b41c0b39367e8480..2d13ff3190a79722a45a933b1e0775b9c340ed8e 100644 (file)
@@ -678,7 +678,6 @@ static void child_main(int child_num_arg)
         * because it let's us deal with tid better.
         */
     }
-    apr_pool_create(&my_info->tpool, pchild);
     my_info = (proc_info *)malloc(sizeof(proc_info));
     if (my_info == NULL) {
         ap_log_error(APLOG_MARK, APLOG_ALERT, errno, ap_server_conf,
@@ -688,6 +687,9 @@ static void child_main(int child_num_arg)
     my_info->pid = my_child_num;
     my_info->tid = i;
     my_info->sd = 0;
+    apr_pool_create(&my_info->tpool, pchild);
+    ap_update_child_status(my_child_num, i, SERVER_STARTING, 
+                           (request_rec *) NULL);
     worker_thread(my_info);
 }