comparison src/http/ngx_http_write_filter_module.c @ 5884:8486205d10db

Write filter: stored delay in a variable, no functional changes. The code is now similar to ngx_event_pipe_read_upstream().
author Roman Arutyunyan <arut@nginx.com>
date Tue, 28 Oct 2014 12:29:59 +0300
parents 311803b21504
children 08bfc7188a41
comparison
equal deleted inserted replaced
5883:973ee2276300 5884:8486205d10db
217 limit = (off_t) r->limit_rate * (ngx_time() - r->start_sec + 1) 217 limit = (off_t) r->limit_rate * (ngx_time() - r->start_sec + 1)
218 - (c->sent - r->limit_rate_after); 218 - (c->sent - r->limit_rate_after);
219 219
220 if (limit <= 0) { 220 if (limit <= 0) {
221 c->write->delayed = 1; 221 c->write->delayed = 1;
222 ngx_add_timer(c->write, 222 delay = (ngx_msec_t) (- limit * 1000 / r->limit_rate + 1);
223 (ngx_msec_t) (- limit * 1000 / r->limit_rate + 1)); 223 ngx_add_timer(c->write, delay);
224 224
225 c->buffered |= NGX_HTTP_WRITE_BUFFERED; 225 c->buffered |= NGX_HTTP_WRITE_BUFFERED;
226 226
227 return NGX_AGAIN; 227 return NGX_AGAIN;
228 } 228 }