From 49ee282ba12bbbcb60c2c132ccb6ff76ebc17985 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Sat, 22 Sep 2007 19:23:34 +0000 Subject: [PATCH] r1409, r1413 merge: set delay only when almost whole sendfile_max_chunk was transferred --- src/http/ngx_http_write_filter_module.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/http/ngx_http_write_filter_module.c b/src/http/ngx_http_write_filter_module.c index 944593ae4..e5a26f003 100644 --- a/src/http/ngx_http_write_filter_module.c +++ b/src/http/ngx_http_write_filter_module.c @@ -249,7 +249,11 @@ ngx_http_write_filter(ngx_http_request_t *r, ngx_chain_t *in) c->write->delayed = 1; ngx_add_timer(c->write, (ngx_msec_t) (sent * 1000 / r->limit_rate + 1)); - } else if (c->write->ready && clcf->sendfile_max_chunk) { + } else if (c->write->ready + && clcf->sendfile_max_chunk + && (size_t) (c->sent - sent) + >= clcf->sendfile_max_chunk - 2 * ngx_pagesize) + { c->write->delayed = 1; ngx_add_timer(c->write, 1); }