aboutsummaryrefslogtreecommitdiff
path: root/src/os/win32
diff options
context:
space:
mode:
Diffstat (limited to 'src/os/win32')
-rw-r--r--src/os/win32/ngx_process_cycle.c1
-rw-r--r--src/os/win32/ngx_wsarecv.c2
-rw-r--r--src/os/win32/ngx_wsarecv_chain.c2
3 files changed, 5 insertions, 0 deletions
diff --git a/src/os/win32/ngx_process_cycle.c b/src/os/win32/ngx_process_cycle.c
index 3aea874e0..0c848eff4 100644
--- a/src/os/win32/ngx_process_cycle.c
+++ b/src/os/win32/ngx_process_cycle.c
@@ -804,6 +804,7 @@ ngx_worker_thread(void *data)
ngx_set_shutdown_timer(cycle);
ngx_close_listening_sockets(cycle);
ngx_close_idle_connections(cycle);
+ ngx_event_process_posted(cycle, &ngx_posted_events);
}
}
diff --git a/src/os/win32/ngx_wsarecv.c b/src/os/win32/ngx_wsarecv.c
index ac883107b..b01405e26 100644
--- a/src/os/win32/ngx_wsarecv.c
+++ b/src/os/win32/ngx_wsarecv.c
@@ -78,6 +78,7 @@ ngx_wsarecv(ngx_connection_t *c, u_char *buf, size_t size)
ngx_socket_nread_n " failed");
if (n == NGX_ERROR) {
+ rev->ready = 0;
rev->error = 1;
}
@@ -95,6 +96,7 @@ ngx_wsarecv(ngx_connection_t *c, u_char *buf, size_t size)
}
if (bytes == 0) {
+ rev->ready = 0;
rev->eof = 1;
}
diff --git a/src/os/win32/ngx_wsarecv_chain.c b/src/os/win32/ngx_wsarecv_chain.c
index 4f95d5a2b..e60389bb7 100644
--- a/src/os/win32/ngx_wsarecv_chain.c
+++ b/src/os/win32/ngx_wsarecv_chain.c
@@ -121,6 +121,7 @@ ngx_wsarecv_chain(ngx_connection_t *c, ngx_chain_t *chain, off_t limit)
} else if (bytes == size) {
if (ngx_socket_nread(c->fd, &rev->available) == -1) {
+ rev->ready = 0;
rev->error = 1;
ngx_connection_error(c, ngx_socket_errno,
ngx_socket_nread_n " failed");
@@ -138,6 +139,7 @@ ngx_wsarecv_chain(ngx_connection_t *c, ngx_chain_t *chain, off_t limit)
}
if (bytes == 0) {
+ rev->ready = 0;
rev->eof = 1;
}