mirror of
https://github.com/nginx/nginx.git
synced 2026-07-10 10:54:57 +00:00
Postpone filter: prevented uninitialized r->out.
The r->out chain link could be left uninitialized in case of error. A segfault could happen if the subrequest handler accessed it. The issue was introduced in commit 20f139e9ffa8.
This commit is contained in:
parent
7c5c15a25d
commit
6e30556127
1 changed files with 5 additions and 5 deletions
|
|
@ -191,11 +191,6 @@ ngx_http_postpone_filter_in_memory(ngx_http_request_t *r, ngx_chain_t *in)
|
|||
"http postpone filter in memory");
|
||||
|
||||
if (r->out == NULL) {
|
||||
r->out = ngx_alloc_chain_link(r->pool);
|
||||
if (r->out == NULL) {
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
|
||||
|
||||
if (r->headers_out.content_length_n != -1) {
|
||||
|
|
@ -218,6 +213,11 @@ ngx_http_postpone_filter_in_memory(ngx_http_request_t *r, ngx_chain_t *in)
|
|||
|
||||
b->last_buf = 1;
|
||||
|
||||
r->out = ngx_alloc_chain_link(r->pool);
|
||||
if (r->out == NULL) {
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
r->out->buf = b;
|
||||
r->out->next = NULL;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue