mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
Proxy: fixed proxy_set_body with proxy_cache.
If the last header evaluation resulted in an empty header, the e.skip flag was set and was not reset when we've switched to evaluation of body_values. This incorrectly resulted in body values being skipped instead of producing some correct body as set by proxy_set_body. Fix is to properly reset the e.skip flag. As the problem only appeared if the last potentially non-empty header happened to be empty, it only manifested itself if proxy_set_body was used with proxy_cache.
This commit is contained in:
parent
e87a565aab
commit
58eb93f791
@ -1379,6 +1379,7 @@ ngx_http_proxy_create_request(ngx_http_request_t *r)
|
||||
if (plcf->body_values) {
|
||||
e.ip = plcf->body_values->elts;
|
||||
e.pos = b->last;
|
||||
e.skip = 0;
|
||||
|
||||
while (*(uintptr_t *) e.ip) {
|
||||
code = *(ngx_http_script_code_pt *) e.ip;
|
||||
|
Loading…
Reference in New Issue
Block a user