Mercurial > hg > nginx
changeset 6047:e2e609f59094
Request body: free chain links in ngx_http_write_request_body().
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 23 Mar 2015 21:09:12 +0300 |
parents | 66176dfea01e |
children | 9e231d4cecca |
files | src/http/ngx_http_request_body.c |
diffstat | 1 files changed, 7 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_request_body.c Mon Mar 23 21:09:05 2015 +0300 +++ b/src/http/ngx_http_request_body.c Mon Mar 23 21:09:12 2015 +0300 @@ -415,7 +415,7 @@ ngx_http_write_request_body(ngx_http_request_t *r) { ssize_t n; - ngx_chain_t *cl; + ngx_chain_t *cl, *ln; ngx_temp_file_t *tf; ngx_http_request_body_t *rb; ngx_http_core_loc_conf_t *clcf; @@ -478,8 +478,13 @@ /* mark all buffers as written */ - for (cl = rb->bufs; cl; cl = cl->next) { + for (cl = rb->bufs; cl; /* void */) { + cl->buf->pos = cl->buf->last; + + ln = cl; + cl = cl->next; + ngx_free_chain(r->pool, ln); } rb->bufs = NULL;