diff options
Diffstat (limited to 'src/http/modules/proxy')
-rw-r--r-- | src/http/modules/proxy/ngx_http_proxy_parse.c | 4 | ||||
-rw-r--r-- | src/http/modules/proxy/ngx_http_proxy_upstream.c | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/http/modules/proxy/ngx_http_proxy_parse.c b/src/http/modules/proxy/ngx_http_proxy_parse.c index 1729542d0..a69795850 100644 --- a/src/http/modules/proxy/ngx_http_proxy_parse.c +++ b/src/http/modules/proxy/ngx_http_proxy_parse.c @@ -185,6 +185,10 @@ int ngx_http_proxy_parse_status_line(ngx_http_proxy_ctx_t *p) return NGX_HTTP_PROXY_PARSE_NO_HEADER; } break; + + /* suppress warning */ + case sw_done: + break; } } diff --git a/src/http/modules/proxy/ngx_http_proxy_upstream.c b/src/http/modules/proxy/ngx_http_proxy_upstream.c index 9d442cd4a..1b1ca4493 100644 --- a/src/http/modules/proxy/ngx_http_proxy_upstream.c +++ b/src/http/modules/proxy/ngx_http_proxy_upstream.c @@ -936,6 +936,14 @@ static void ngx_http_proxy_send_response(ngx_http_proxy_ctx_t *p) p->header_sent = 1; + if (p->cache && p->cache->ctx.file.fd != NGX_INVALID_FILE) { + if (ngx_close_file(p->cache->ctx.file.fd) == NGX_FILE_ERROR) { + ngx_log_error(NGX_LOG_ALERT, r->connection->log, ngx_errno, + ngx_close_file_n " \"%s\" failed", + p->cache->ctx.file.name.data); + } + } + if (p->cachable) { header = (ngx_http_cache_header_t *) p->header_in->start; |