aboutsummaryrefslogtreecommitdiff
path: root/src/http/modules/ngx_http_proxy_module.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/http/modules/ngx_http_proxy_module.c')
-rw-r--r--src/http/modules/ngx_http_proxy_module.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/http/modules/ngx_http_proxy_module.c b/src/http/modules/ngx_http_proxy_module.c
index 21a555c11..94ef73660 100644
--- a/src/http/modules/ngx_http_proxy_module.c
+++ b/src/http/modules/ngx_http_proxy_module.c
@@ -1188,6 +1188,7 @@ ngx_http_proxy_reinit_request(ngx_http_request_t *r)
static ngx_int_t
ngx_http_proxy_process_status_line(ngx_http_request_t *r)
{
+ size_t len;
ngx_int_t rc;
ngx_http_upstream_t *u;
ngx_http_proxy_ctx_t *ctx;
@@ -1238,15 +1239,15 @@ ngx_http_proxy_process_status_line(ngx_http_request_t *r)
u->headers_in.status_n = ctx->status.code;
- u->headers_in.status_line.len = ctx->status.end - ctx->status.start;
- u->headers_in.status_line.data = ngx_pnalloc(r->pool,
- u->headers_in.status_line.len);
+ len = ctx->status.end - ctx->status.start;
+ u->headers_in.status_line.len = len;
+
+ u->headers_in.status_line.data = ngx_pnalloc(r->pool, len);
if (u->headers_in.status_line.data == NULL) {
return NGX_ERROR;
}
- ngx_memcpy(u->headers_in.status_line.data, ctx->status.start,
- u->headers_in.status_line.len);
+ ngx_memcpy(u->headers_in.status_line.data, ctx->status.start, len);
ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
"http proxy status %ui \"%V\"",