From df71cd1125390512bbd421b0218b4bbc0e1d5209 Mon Sep 17 00:00:00 2001 From: Valentin Bartenev Date: Sun, 23 Dec 2012 15:27:55 +0000 Subject: 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. --- src/http/modules/ngx_http_log_module.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/http/modules/ngx_http_log_module.c b/src/http/modules/ngx_http_log_module.c index 0962c8475..69dd59bf9 100644 --- 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); -- cgit