Mercurial > hg > nginx
changeset 4947:4251e72b8bb4
Allow the complex value to be defined as an empty string.
This makes conversion from strings to complex values possible
without the loss of functionality.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Thu, 06 Dec 2012 23:03:53 +0000 |
parents | 2570296374b4 |
children | d03712b6914b |
files | src/http/modules/ngx_http_auth_basic_module.c src/http/modules/ngx_http_fastcgi_module.c src/http/modules/ngx_http_proxy_module.c src/http/modules/ngx_http_scgi_module.c src/http/modules/ngx_http_sub_filter_module.c src/http/modules/ngx_http_uwsgi_module.c src/http/ngx_http_core_module.c src/http/ngx_http_script.c |
diffstat | 8 files changed, 14 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/ngx_http_auth_basic_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_auth_basic_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -117,7 +117,7 @@ alcf = ngx_http_get_module_loc_conf(r, ngx_http_auth_basic_module); - if (alcf->realm.len == 0 || alcf->user_file.value.len == 0) { + if (alcf->realm.len == 0 || alcf->user_file.value.data == NULL) { return NGX_DECLINED; } @@ -390,7 +390,7 @@ conf->realm = prev->realm; } - if (conf->user_file.value.len == 0) { + if (conf->user_file.value.data == NULL) { conf->user_file = prev->user_file; } @@ -456,7 +456,7 @@ ngx_str_t *value; ngx_http_compile_complex_value_t ccv; - if (alcf->user_file.value.len) { + if (alcf->user_file.value.data) { return "is duplicate"; }
--- a/src/http/modules/ngx_http_fastcgi_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_fastcgi_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -3014,7 +3014,7 @@ value = cf->args->elts; - if (flcf->cache_key.value.len) { + if (flcf->cache_key.value.data) { return "is duplicate"; }
--- a/src/http/modules/ngx_http_proxy_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_proxy_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -837,7 +837,7 @@ return NGX_ERROR; } - if (plcf->cache_key.value.len) { + if (plcf->cache_key.value.data) { if (ngx_http_complex_value(r, &plcf->cache_key, key) != NGX_OK) { return NGX_ERROR; @@ -3651,7 +3651,7 @@ value = cf->args->elts; - if (plcf->cache_key.value.len) { + if (plcf->cache_key.value.data) { return "is duplicate"; }
--- a/src/http/modules/ngx_http_scgi_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_scgi_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -1771,7 +1771,7 @@ value = cf->args->elts; - if (scf->cache_key.value.len) { + if (scf->cache_key.value.data) { return "is duplicate"; }
--- a/src/http/modules/ngx_http_sub_filter_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_sub_filter_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -628,7 +628,7 @@ ngx_str_t *value; ngx_http_compile_complex_value_t ccv; - if (slcf->match.len) { + if (slcf->match.data) { return "is duplicate"; } @@ -688,7 +688,7 @@ ngx_conf_merge_value(conf->once, prev->once, 1); ngx_conf_merge_str_value(conf->match, prev->match, ""); - if (conf->value.value.len == 0) { + if (conf->value.value.data == NULL) { conf->value = prev->value; }
--- a/src/http/modules/ngx_http_uwsgi_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/modules/ngx_http_uwsgi_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -1807,7 +1807,7 @@ value = cf->args->elts; - if (uwcf->cache_key.value.len) { + if (uwcf->cache_key.value.data) { return "is duplicate"; }
--- a/src/http/ngx_http_core_module.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/ngx_http_core_module.c Thu Dec 06 23:03:53 2012 +0000 @@ -4593,7 +4593,7 @@ ngx_str_null(&args); - if (cv.lengths == NULL && uri.data[0] == '/') { + if (cv.lengths == NULL && uri.len && uri.data[0] == '/') { p = (u_char *) ngx_strchr(uri.data, '?'); if (p) {
--- a/src/http/ngx_http_script.c Thu Dec 06 21:22:58 2012 +0000 +++ b/src/http/ngx_http_script.c Thu Dec 06 23:03:53 2012 +0000 @@ -114,11 +114,6 @@ v = ccv->value; - if (v->len == 0) { - ngx_conf_log_error(NGX_LOG_EMERG, ccv->cf, 0, "empty parameter"); - return NGX_ERROR; - } - nv = 0; nc = 0; @@ -133,8 +128,9 @@ } } - if (v->data[0] != '$' && (ccv->conf_prefix || ccv->root_prefix)) { - + if ((v->len == 0 || v->data[0] != '$') + && (ccv->conf_prefix || ccv->root_prefix)) + { if (ngx_conf_full_name(ccv->cf->cycle, v, ccv->conf_prefix) != NGX_OK) { return NGX_ERROR; }