[nginx] Proxy: do not create conf->headers_source when not needed.
Maxim Dounin
mdounin at mdounin.ru
Fri Oct 14 18:14:00 UTC 2016
details: http://hg.nginx.org/nginx/rev/63991ab67b3a
branches:
changeset: 6746:63991ab67b3a
user: Maxim Dounin <mdounin at mdounin.ru>
date: Fri Oct 14 19:48:26 2016 +0300
description:
Proxy: do not create conf->headers_source when not needed.
diffstat:
src/http/modules/ngx_http_proxy_module.c | 27 +++++++++++----------------
1 files changed, 11 insertions(+), 16 deletions(-)
diffs (45 lines):
diff --git a/src/http/modules/ngx_http_proxy_module.c b/src/http/modules/ngx_http_proxy_module.c
--- a/src/http/modules/ngx_http_proxy_module.c
+++ b/src/http/modules/ngx_http_proxy_module.c
@@ -3392,14 +3392,6 @@ ngx_http_proxy_init_headers(ngx_conf_t *
return NGX_ERROR;
}
- if (conf->headers_source == NULL) {
- conf->headers_source = ngx_array_create(cf->pool, 4,
- sizeof(ngx_keyval_t));
- if (conf->headers_source == NULL) {
- return NGX_ERROR;
- }
- }
-
headers->lengths = ngx_array_create(cf->pool, 64, 1);
if (headers->lengths == NULL) {
return NGX_ERROR;
@@ -3410,15 +3402,18 @@ ngx_http_proxy_init_headers(ngx_conf_t *
return NGX_ERROR;
}
- src = conf->headers_source->elts;
- for (i = 0; i < conf->headers_source->nelts; i++) {
-
- s = ngx_array_push(&headers_merged);
- if (s == NULL) {
- return NGX_ERROR;
+ if (conf->headers_source) {
+
+ src = conf->headers_source->elts;
+ for (i = 0; i < conf->headers_source->nelts; i++) {
+
+ s = ngx_array_push(&headers_merged);
+ if (s == NULL) {
+ return NGX_ERROR;
+ }
+
+ *s = src[i];
}
-
- *s = src[i];
}
h = default_headers;
More information about the nginx-devel
mailing list