Mercurial > hg > nginx
changeset 643:947c6fd27699 release-0.3.43
nginx-0.3.43-RELEASE import
*) Bugfix: in the SSI.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 26 Apr 2006 15:21:08 +0000 |
parents | 8bb4a20a1dc8 |
children | 610ff734a8cc |
files | docs/xml/nginx/changes.xml src/core/nginx.h src/core/ngx_buf.c src/http/modules/ngx_http_ssi_filter_module.c src/http/ngx_http_core_module.c src/http/ngx_http_postpone_filter_module.c |
diffstat | 6 files changed, 45 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/docs/xml/nginx/changes.xml +++ b/docs/xml/nginx/changes.xml @@ -9,6 +9,20 @@ <title lang="en">nginx changelog</title> +<changes ver="0.3.43" date="26.04.2006"> + +<change type="bugfix"> +<para lang="ru"> +× SSI. +</para> +<para lang="en"> +in the SSI. +</para> +</change> + +</changes> + + <changes ver="0.3.42" date="26.04.2006"> <change type="feature">
--- a/src/core/nginx.h +++ b/src/core/nginx.h @@ -8,7 +8,7 @@ #define _NGINX_H_INCLUDED_ -#define NGINX_VER "nginx/0.3.42" +#define NGINX_VER "nginx/0.3.43" #define NGINX_VAR "NGINX" #define NGX_OLDPID_EXT ".oldbin"
--- a/src/core/ngx_buf.c +++ b/src/core/ngx_buf.c @@ -134,6 +134,12 @@ ngx_chain_add_copy(ngx_pool_t *pool, ngx } while (in) { + + if (ngx_buf_sync_only(in->buf)) { + in = in->next; + continue; + } + cl = ngx_alloc_chain_link(pool); if (cl == NULL) { return NGX_ERROR;
--- a/src/http/modules/ngx_http_ssi_filter_module.c +++ b/src/http/modules/ngx_http_ssi_filter_module.c @@ -737,6 +737,8 @@ ngx_http_ssi_output(ngx_http_request_t * #if 1 b = NULL; for (cl = ctx->out; cl; cl = cl->next) { + ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi out: %p %p", cl->buf, cl->buf->pos); if (cl->buf == b) { ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, "the same buf was used in ssi"); @@ -1685,6 +1687,9 @@ ngx_http_ssi_echo(ngx_http_request_t *r, var = params[NGX_HTTP_SSI_ECHO_VAR]; + ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi echo \"%V\"", var); + key = 0; for (i = 0; i < var->len; i++) { @@ -1798,6 +1803,9 @@ ngx_http_ssi_set(ngx_http_request_t *r, name = params[NGX_HTTP_SSI_SET_VAR]; value = params[NGX_HTTP_SSI_SET_VALUE]; + ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi set \"%V\" \"%V\"", name, value); + if (ngx_http_ssi_evaluate_string(r, ctx, value, 0) != NGX_OK) { return NGX_HTTP_SSI_ERROR; } @@ -1861,6 +1869,9 @@ ngx_http_ssi_if(ngx_http_request_t *r, n expr = params[NGX_HTTP_SSI_IF_EXPR]; + ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi if expr=\"%V\"", expr); + left.data = expr->data; last = expr->data + expr->len; @@ -2025,6 +2036,9 @@ static ngx_int_t ngx_http_ssi_else(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, ngx_str_t **params) { + ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi else"); + if (ctx->output_chosen) { ctx->output = 0; } else { @@ -2041,6 +2055,9 @@ static ngx_int_t ngx_http_ssi_endif(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx, ngx_str_t **params) { + ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, + "ssi endif"); + ctx->output = 1; ctx->output_chosen = 0; ctx->conditional = 0;
--- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -738,9 +738,11 @@ ngx_http_update_location_config(ngx_http clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module); } - r->connection->log->file = clcf->err_log->file; - if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) { - r->connection->log->log_level = clcf->err_log->log_level; + if (r == r->main) { + r->connection->log->file = clcf->err_log->file; + if (!(r->connection->log->log_level & NGX_LOG_DEBUG_CONNECTION)) { + r->connection->log->log_level = clcf->err_log->log_level; + } } if ((ngx_io.flags & NGX_IO_SENDFILE) && clcf->sendfile) {
--- a/src/http/ngx_http_postpone_filter_module.c +++ b/src/http/ngx_http_postpone_filter_module.c @@ -96,7 +96,8 @@ ngx_http_postpone_filter(ngx_http_reques for (cl = pr->out; cl; cl = cl->next) { if (cl->buf == b) { ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, - "the same buf was used in postponed"); + "the same buf was used in postponed %p %p", + b, b->pos); ngx_debug_point(); return NGX_ERROR; }