diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2012-02-05 15:47:58 +0000 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2012-02-05 15:47:58 +0000 |
commit | d7ccc61da1513f51c4067928d736630415e75afe (patch) | |
tree | fa8f1f945d8987eb0e8ff43f48bdcb3541ffd99b | |
parent | 6a86b4d6626c8285e36c36de22c9db9bc17d3943 (diff) | |
download | nginx-d7ccc61da1513f51c4067928d736630415e75afe.tar.gz |
Merge of r4381, r4400:
Fixed limit_conn_log_level/limit_req_log_level inheritance. The
directives did not work if there were no limit_conn/limit_req
specified on the same level.
The code for limit_conn is different in 1.0.x, conflict resolved
manually.
-rw-r--r-- | src/http/modules/ngx_http_limit_req_module.c | 4 | ||||
-rw-r--r-- | src/http/modules/ngx_http_limit_zone_module.c | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/http/modules/ngx_http_limit_req_module.c b/src/http/modules/ngx_http_limit_req_module.c index 718fae8e2..779b397c2 100644 --- a/src/http/modules/ngx_http_limit_req_module.c +++ b/src/http/modules/ngx_http_limit_req_module.c @@ -569,7 +569,9 @@ ngx_http_limit_req_merge_conf(ngx_conf_t *cf, void *parent, void *child) ngx_http_limit_req_conf_t *conf = child; if (conf->shm_zone == NULL) { - *conf = *prev; + conf->shm_zone = prev->shm_zone; + conf->burst = prev->burst; + conf->nodelay = prev->nodelay; } ngx_conf_merge_uint_value(conf->limit_log_level, prev->limit_log_level, diff --git a/src/http/modules/ngx_http_limit_zone_module.c b/src/http/modules/ngx_http_limit_zone_module.c index 31df316e4..ea780cfca 100644 --- a/src/http/modules/ngx_http_limit_zone_module.c +++ b/src/http/modules/ngx_http_limit_zone_module.c @@ -421,7 +421,8 @@ ngx_http_limit_zone_merge_conf(ngx_conf_t *cf, void *parent, void *child) ngx_http_limit_zone_conf_t *conf = child; if (conf->shm_zone == NULL) { - *conf = *prev; + conf->shm_zone = prev->shm_zone; + conf->conn = prev->conn; } ngx_conf_merge_uint_value(conf->log_level, prev->log_level, NGX_LOG_ERR); |