details: http://freenginx.org/hg/nginx/rev/14770557be17 branches: changeset: 9298:14770557be17 user: Maxim Dounin <mdou...@mdounin.ru> date: Tue Jun 25 22:58:36 2024 +0300 description: Core: simplified log levels matching.
diffstat: src/core/ngx_log.c | 29 +++++++++++++---------------- 1 files changed, 13 insertions(+), 16 deletions(-) diffs (62 lines): diff --git a/src/core/ngx_log.c b/src/core/ngx_log.c --- a/src/core/ngx_log.c +++ b/src/core/ngx_log.c @@ -613,18 +613,12 @@ ngx_log_set_log(ngx_conf_t *cf, ngx_log_ static char * ngx_log_set_levels(ngx_conf_t *cf, ngx_log_t *log) { - ngx_uint_t i, n, d, found; + ngx_uint_t i, n, d; ngx_str_t *value; - if (cf->args->nelts == 2) { - log->log_level = NGX_LOG_ERR; - return NGX_CONF_OK; - } - value = cf->args->elts; for (i = 2; i < cf->args->nelts; i++) { - found = 0; for (n = 1; n <= NGX_LOG_DEBUG; n++) { if (ngx_strcmp(value[i].data, err_levels[n].data) == 0) { @@ -637,8 +631,7 @@ ngx_log_set_levels(ngx_conf_t *cf, ngx_l } log->log_level = n; - found = 1; - break; + goto next; } } @@ -652,17 +645,21 @@ ngx_log_set_levels(ngx_conf_t *cf, ngx_l } log->log_level |= d; - found = 1; - break; + goto next; } } + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "invalid log level \"%V\"", &value[i]); + return NGX_CONF_ERROR; - if (!found) { - ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, - "invalid log level \"%V\"", &value[i]); - return NGX_CONF_ERROR; - } + next: + + continue; + } + + if (log->log_level == 0) { + log->log_level = NGX_LOG_ERR; } if (log->log_level == NGX_LOG_DEBUG) {