]> granicus.if.org Git - apache/commitdiff
Some shutdown work.
authorBill Stoddard <stoddard@apache.org>
Tue, 3 Apr 2001 00:36:09 +0000 (00:36 +0000)
committerBill Stoddard <stoddard@apache.org>
Tue, 3 Apr 2001 00:36:09 +0000 (00:36 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88669 13f79535-47bb-0310-9956-ffa450edef68

server/mpm/winnt/mpm_winnt.c

index 593826f70c7f3e57ad0c6ef14e301353dbdf09de..4fda4feec8d178430a5d9f05101758ff78f94768 100644 (file)
@@ -678,7 +678,7 @@ static void winnt_accept(void *listen_socket)
 
     nlsd = (SOCKET) listen_socket;
 
-    while (1) {
+    while (!shutdown_in_progress) {
         pCompContext = NULL;
         /* Grab a context off the queue */
         apr_lock_acquire(qlock);
@@ -758,7 +758,10 @@ static void winnt_accept(void *listen_socket)
                 pCompContext->accept_socket = INVALID_SOCKET;
                 ap_log_error(APLOG_MARK, APLOG_DEBUG, lasterror, server_conf,
                              "winnt_accept: AcceptEx failed. Reallocate the accept socket and try again.");
-                goto again;
+                if (shutdown_in_progress)
+                    break;
+                else
+                    goto again;
             }
             else if (lasterror != APR_FROM_OS_ERROR(ERROR_IO_PENDING)) {
                 ap_log_error(APLOG_MARK,APLOG_ERR, lasterror, server_conf,