# HG changeset patch # User Valentin Bartenev # Date 1356276475 0 # Node ID 7737f0d788c18c4e03138c3c768c83e4dc1e9938 # Parent 2677c561127b39bfd20413792a70b450cf0df696 Access log: fixed redundant buffer reallocation. Previously a new buffer was allocated for every "access_log" directive with the same file path and "buffer=" parameters, while only one buffer per file is used. diff --git a/src/http/modules/ngx_http_log_module.c b/src/http/modules/ngx_http_log_module.c --- a/src/http/modules/ngx_http_log_module.c +++ b/src/http/modules/ngx_http_log_module.c @@ -970,11 +970,15 @@ buffer: return NGX_CONF_ERROR; } - if (log->file->buffer && log->file->last - log->file->pos != buf) { - ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, - "access_log \"%V\" already defined " - "with different buffer size", &value[1]); - return NGX_CONF_ERROR; + if (log->file->buffer) { + if (log->file->last - log->file->pos != buf) { + ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, + "access_log \"%V\" already defined " + "with different buffer size", &value[1]); + return NGX_CONF_ERROR; + } + + return NGX_CONF_OK; } log->file->buffer = ngx_palloc(cf->pool, buf);