summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMax Romanov <max.romanov@nginx.com>2017-06-26 19:58:43 +0300
committerMax Romanov <max.romanov@nginx.com>2017-06-26 19:58:43 +0300
commit44b3ad17f4b2f7d43b18df18199543a0ca6f17f7 (patch)
tree5f72888f26c60c91acae536401c0589d2e5c9299
parentd62e6c3b187f70b5b48f80d29efe33a2ffdd1f10 (diff)
downloadunit-44b3ad17f4b2f7d43b18df18199543a0ca6f17f7.tar.gz
unit-44b3ad17f4b2f7d43b18df18199543a0ca6f17f7.tar.bz2
Double buf completion call on connection timeout fixed.
-rw-r--r--src/nxt_router.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/nxt_router.c b/src/nxt_router.c
index d55862f7..9712d44b 100644
--- a/src/nxt_router.c
+++ b/src/nxt_router.c
@@ -985,24 +985,20 @@ nxt_router_data_handler(nxt_task_t *task, nxt_port_recv_msg_t *msg)
size_t dump_size;
nxt_buf_t *b, *i, *last;
nxt_conn_t *c;
- nxt_work_queue_t *wq;
nxt_req_conn_link_t *rc;
nxt_event_engine_t *engine;
b = msg->buf;
engine = task->thread->engine;
- wq = &engine->fast_work_queue;
rc = nxt_event_engine_request_find(engine, msg->port_msg.stream);
if (nxt_slow_path(rc == NULL)) {
nxt_debug(task, "request id %08uxD not found", msg->port_msg.stream);
- /* complete buffer(s) */
+ /* Mark buffers as read. */
for (i = b; i != NULL; i = i->next) {
i->mem.pos = i->mem.free;
-
- nxt_work_queue_add(wq, i->completion_handler, task, i, i->parent);
}
return;