summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2006-06-30 12:19:32 +0000
committerIgor Sysoev <igor@sysoev.ru>2006-06-30 12:19:32 +0000
commite240762c6cc6600025a35b78aab4ef739906598b (patch)
treec74ac9ed40a3aab5d876067d950103080e0f8c9f
parentac0e7bc27fc575820b0b0b338b822ea2752a29d3 (diff)
downloadnginx-release-0.3.51.tar.gz
nginx-0.3.51-RELEASE importrelease-0.3.51
*) Bugfix: the "<" symbols might disappeared some conditions in the SSI; the bug had appeared in 0.3.50.
-rw-r--r--docs/xml/nginx/changes.xml20
-rw-r--r--src/core/nginx.h2
-rw-r--r--src/http/modules/ngx_http_charset_filter_module.c2
-rw-r--r--src/http/modules/ngx_http_ssi_filter_module.c4
-rw-r--r--src/http/ngx_http_upstream.c1
5 files changed, 24 insertions, 5 deletions
diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml
index 879da4f14..635851b6a 100644
--- a/docs/xml/nginx/changes.xml
+++ b/docs/xml/nginx/changes.xml
@@ -9,6 +9,22 @@
<title lang="en">nginx changelog</title>
+<changes ver="0.3.51" date="30.06.2006">
+
+<change type="bugfix">
+<para lang="ru">
+при некоторых условиях в SSI мог пропадать символы "&lt;";
+ошибка появилась в 0.3.50.
+</para>
+<para lang="en">
+the "&lt;" symbols might disappeared some conditions in the SSI;
+bug appeared in 0.3.50.
+</para>
+</change>
+
+</changes>
+
+
<changes ver="0.3.50" date="28.06.2006">
<change type="change">
@@ -48,7 +64,7 @@ and FastCGI mode.
<change type="bugfix">
<para lang="ru">
-символ "\" в парах "\"" и "\'" в SSI командах убирался только, если
+символ "\" в парах "\"" и "\'" в SSI командах убирался, только если
также использовался символ "$".
</para>
<para lang="en">
@@ -71,7 +87,7 @@ in the SSI after inclusion.
<change type="bugfix">
<para lang="ru">
если в заголовке ответа была строка <nobr>"Content-Length: 0",</nobr>
-при использовании небуферизированного проксировании не закрывалось соединение
+то при использовании небуферизированного проксировании не закрывалось соединение
с клиентом.
</para>
<para lang="en">
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;
}
}