summaryrefslogtreecommitdiffhomepage
path: root/src/event/ngx_event_udp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/ngx_event_udp.c')
-rw-r--r--src/event/ngx_event_udp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/event/ngx_event_udp.c b/src/event/ngx_event_udp.c
index 65eb22fd2..557283050 100644
--- a/src/event/ngx_event_udp.c
+++ b/src/event/ngx_event_udp.c
@@ -256,7 +256,9 @@ ngx_event_recvmsg(ngx_event_t *ev)
rev = c->read;
c->udp->buffer = &buf;
+
rev->ready = 1;
+ rev->active = 0;
rev->handler(rev);
@@ -265,6 +267,7 @@ ngx_event_recvmsg(ngx_event_t *ev)
}
rev->ready = 0;
+ rev->active = 1;
goto next;
}
@@ -343,6 +346,7 @@ ngx_event_recvmsg(ngx_event_t *ev)
rev = c->read;
wev = c->write;
+ rev->active = 1;
wev->ready = 1;
rev->log = log;
@@ -453,7 +457,9 @@ ngx_udp_shared_recv(ngx_connection_t *c, u_char *buf, size_t size)
ngx_memcpy(buf, b->pos, n);
c->udp->buffer = NULL;
+
c->read->ready = 0;
+ c->read->active = 1;
return n;
}