From: William A. Rowe Jr Date: Tue, 11 Apr 2017 14:09:00 +0000 (+0000) Subject: If the lingering close does not leave the socket in a disconnected state, X-Git-Tag: 2.5.0-alpha~477 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ff0f1b909af8ca60dba8fdbbd13cb936d66fd2b8;p=apache If the lingering close does not leave the socket in a disconnected state, do not recycle the socket. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1790978 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/mpm/winnt/child.c b/server/mpm/winnt/child.c index 45b22a0d34..559f41c0cc 100644 --- a/server/mpm/winnt/child.c +++ b/server/mpm/winnt/child.c @@ -813,12 +813,12 @@ static DWORD __stdcall worker_main(void *thread_num_val) ap_process_connection(c, context->sock); - apr_socket_opt_get(context->sock, APR_SO_DISCONNECTED, &disconnected); + ap_lingering_close(c); + apr_socket_opt_get(context->sock, APR_SO_DISCONNECTED, &disconnected); if (!disconnected) { context->accept_socket = INVALID_SOCKET; } - ap_lingering_close(c); } ap_update_child_status_from_indexes(0, thread_num, SERVER_DEAD, NULL);