diff options
-rw-r--r-- | CHANGES | 6 | ||||
-rw-r--r-- | CHANGES.ru | 12 | ||||
-rw-r--r-- | src/core/nginx.h | 2 | ||||
-rw-r--r-- | src/http/modules/ngx_http_charset_filter_module.c | 2 | ||||
-rw-r--r-- | src/http/modules/ngx_http_ssi_filter_module.c | 4 | ||||
-rw-r--r-- | src/http/ngx_http_upstream.c | 1 |
6 files changed, 21 insertions, 6 deletions
@@ -1,4 +1,10 @@ +Changes with nginx 0.3.51 30 Jun 2006 + + *) Bugfix: the "<" symbols might disappeared some conditions in the + SSI; bug appeared in 0.3.50. + + Changes with nginx 0.3.50 28 Jun 2006 *) Change: the "proxy_redirect_errors" and "fastcgi_redirect_errors" diff --git a/CHANGES.ru b/CHANGES.ru index a3ed8b04e..ece10babc 100644 --- a/CHANGES.ru +++ b/CHANGES.ru @@ -1,4 +1,10 @@ +Изменения в nginx 0.3.51 30.06.2006 + + *) Исправление: при некоторых условиях в SSI мог пропадать символы "<"; + ошибка появилась в 0.3.50. + + Изменения в nginx 0.3.50 28.06.2006 *) Изменение: директивы proxy_redirect_errors и fastcgi_redirect_errors @@ -11,14 +17,14 @@ *) Добавление: в режиме прокси и FastCGI поддерживается строка заголовка "X-Accel-Charset" в ответе бэкенда. - *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался - только, если также использовался символ "$". + *) Исправление: символ "\" в парах "\"" и "\'" в SSI командах убирался, + только если также использовался символ "$". *) Исправление: при некоторых условиях в SSI после вставки могла быть добавлена строка "<!--". *) Исправление: если в заголовке ответа была строка - "Content-Length: 0", при использовании небуферизированного + "Content-Length: 0", то при использовании небуферизированного проксировании не закрывалось соединение с клиентом. diff --git a/src/core/nginx.h b/src/core/nginx.h index 834a4c895..91b6af221 100644 --- a/src/core/nginx.h +++ b/src/core/nginx.h @@ -8,7 +8,7 @@ #define _NGINX_H_INCLUDED_ -#define NGINX_VER "nginx/0.3.50" +#define NGINX_VER "nginx/0.3.51" #define NGINX_VAR "NGINX" #define NGX_OLDPID_EXT ".oldbin" diff --git a/src/http/modules/ngx_http_charset_filter_module.c b/src/http/modules/ngx_http_charset_filter_module.c index 635e6c521..b467e4dc2 100644 --- a/src/http/modules/ngx_http_charset_filter_module.c +++ b/src/http/modules/ngx_http_charset_filter_module.c @@ -217,7 +217,7 @@ ngx_http_charset_header_filter(ngx_http_request_t *r) if (charset == NGX_HTTP_NO_CHARSET) { ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0, "unknown charset \"%V\" to override", - &r->headers_out.override_charset); + r->headers_out.override_charset); return ngx_http_next_header_filter(r); } diff --git a/src/http/modules/ngx_http_ssi_filter_module.c b/src/http/modules/ngx_http_ssi_filter_module.c index 63c2dd138..5a65a03e8 100644 --- a/src/http/modules/ngx_http_ssi_filter_module.c +++ b/src/http/modules/ngx_http_ssi_filter_module.c @@ -942,7 +942,9 @@ ngx_http_ssi_parse(ngx_http_request_t *r, ngx_http_ssi_ctx_t *ctx) case ssi_sharp_state: switch (ch) { case '#': - ctx->saved = 0; + if (p - ctx->pos < 4) { + ctx->saved = 0; + } looked = 0; state = ssi_precommand_state; break; diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c index cf9d27b70..a8c557a6e 100644 --- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c @@ -1273,6 +1273,7 @@ ngx_http_upstream_send_response(ngx_http_request_t *r, ngx_http_upstream_t *u) if (clf->fd == r->request_body->temp_file->file.fd) { cl->handler(clf); cl->handler = NULL; + r->request_body->temp_file->file.fd = NGX_INVALID_FILE; break; } } |