workers were allocating from pchild without holding '
child_lock. Allocate from ptrans instead.
Related to: PR 52196
The reporter suggests that the apr_thread_t for r->connection->current_thread
should have a unique pool. This revision handles that for WinNT MPM,
but not for other MPMs.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@
1374874 13f79535-47bb-0310-9956-
ffa450edef68
*/
static DWORD __stdcall worker_main(void *thread_num_val)
{
- apr_thread_t *thd = NULL;
+ apr_thread_t *thd;
apr_os_thread_t osthd;
static int requests_this_child = 0;
winnt_conn_ctx_t *context = NULL;
apr_int32_t disconnected;
osthd = apr_os_thread_current();
- apr_os_thread_put(&thd, &osthd, pchild);
while (1) {
continue;
}
+ thd = NULL;
+ apr_os_thread_put(&thd, &osthd, context->ptrans);
c->current_thread = thd;
/* follow ap_process_connection(c, context->sock) logic