ap_generation_t volatile ap_my_generation=0;
/* a clean exit from a child with proper cleanup */
-static void clean_child_exit(int code, int worker_num, apr_pool_t *ptrans,
- apr_bucket_alloc_t *bucket_alloc) __attribute__ ((noreturn));
-static void clean_child_exit(int code, int worker_num, apr_pool_t *ptrans,
- apr_bucket_alloc_t *bucket_alloc)
+static void clean_child_exit(int code, int worker_num, apr_pool_t *ptrans)
+ __attribute__ ((noreturn));
+static void clean_child_exit(int code, int worker_num, apr_pool_t *ptrans)
{
- apr_bucket_alloc_destroy(bucket_alloc);
if (!shutdown_pending) {
apr_pool_destroy(ptrans);
}
if ((ap_max_requests_per_child > 0
&& requests_this_child++ >= ap_max_requests_per_child)) {
DBPRINT1 ("\n**Thread slot %d is shutting down", my_worker_num);
- clean_child_exit(0, my_worker_num, ptrans, bucket_alloc);
+ clean_child_exit(0, my_worker_num, ptrans);
}
ap_update_child_status_from_indexes(0, my_worker_num, WORKER_READY,
for (;;) {
if (shutdown_pending || restart_pending || (ap_scoreboard_image->servers[0][my_worker_num].status == WORKER_IDLE_KILL)) {
DBPRINT1 ("\nThread slot %d is shutting down\n", my_worker_num);
- clean_child_exit(0, my_worker_num, ptrans, bucket_alloc);
+ clean_child_exit(0, my_worker_num, ptrans);
}
/* Check the listen queue on all sockets for requests */
*/
ap_log_error(APLOG_MARK, APLOG_EMERG, stat, ap_server_conf,
"apr_socket_accept: giving up.");
- clean_child_exit(APEXIT_CHILDFATAL, my_worker_num, ptrans,
- bucket_alloc);
+ clean_child_exit(APEXIT_CHILDFATAL, my_worker_num, ptrans);
}
else {
ap_log_error(APLOG_MARK, APLOG_ERR, stat, ap_server_conf,
"apr_socket_accept: (client socket)");
- clean_child_exit(1, my_worker_num, ptrans, bucket_alloc);
+ clean_child_exit(1, my_worker_num, ptrans);
}
}
}
}
request_count++;
}
- clean_child_exit(0, my_worker_num, ptrans, bucket_alloc);
+ clean_child_exit(0, my_worker_num, ptrans);
}