aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_conf_file.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2005-02-09 14:31:07 +0000
committerIgor Sysoev <igor@sysoev.ru>2005-02-09 14:31:07 +0000
commitaa8286101a57f11f2c1f9b5bf2d7ec121e74beea (patch)
treed87e4d87bf388c7a3c630170d9ba43a8591007ed /src/core/ngx_conf_file.c
parent9ef28fa32a4713d365aa8d4cfc1f8732d6de47f6 (diff)
downloadnginx-aa8286101a57f11f2c1f9b5bf2d7ec121e74beea.tar.gz
nginx-aa8286101a57f11f2c1f9b5bf2d7ec121e74beea.zip
nginx-0.1.18-RELEASE importrelease-0.1.18
*) Workaround: the default values of the devpoll_events and the devpoll_changes directives changed from 512 to 32 to be compatible with Solaris 10. *) Bugfix: the proxy_set_x_var and fastcgi_set_var directives were not inherited. *) Bugfix: in the redirect rewrite directive the arguments were concatenated with URI by the "&" rather than the "?". *) Bugfix: the lines without trailing ";" in the file being included by the ngx_http_geo_module were silently ignored. *) Feature: the ngx_http_stub_status_module. *) Bugfix: the unknown log format in the access_log directive caused the segmentation fault. *) Feature: the new "document_root" parameter of the fastcgi_params directive. *) Feature: the fastcgi_redirect_errors directive. *) Feature: the new "break" modifier of the "rewrite" directive allows to stop the rewrite/location cycle and sets the current configuration to the request.
Diffstat (limited to 'src/core/ngx_conf_file.c')
-rw-r--r--src/core/ngx_conf_file.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/core/ngx_conf_file.c b/src/core/ngx_conf_file.c
index e9cc24de5..436103a8c 100644
--- a/src/core/ngx_conf_file.c
+++ b/src/core/ngx_conf_file.c
@@ -48,7 +48,7 @@ static int argument_number[] = {
NGX_CONF_TAKE7
};
-static int ngx_conf_read_token(ngx_conf_t *cf);
+static ngx_int_t ngx_conf_read_token(ngx_conf_t *cf);
char *ngx_conf_parse(ngx_conf_t *cf, ngx_str_t *filename)
@@ -337,7 +337,7 @@ char *ngx_conf_parse(ngx_conf_t *cf, ngx_str_t *filename)
}
-static int ngx_conf_read_token(ngx_conf_t *cf)
+static ngx_int_t ngx_conf_read_token(ngx_conf_t *cf)
{
u_char *start, ch, *src, *dst;
int len;
@@ -361,7 +361,17 @@ static int ngx_conf_read_token(ngx_conf_t *cf)
if (b->pos >= b->last) {
if (cf->conf_file->file.offset
- >= ngx_file_size(&cf->conf_file->file.info)) {
+ >= ngx_file_size(&cf->conf_file->file.info))
+ {
+ if (cf->args->nelts > 0) {
+ ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
+ "unexpected end of file in %s:%d, "
+ "expecting \";\" or \"}\"",
+ cf->conf_file->file.name.data,
+ cf->conf_file->line);
+ return NGX_ERROR;
+ }
+
return NGX_CONF_FILE_DONE;
}
@@ -418,7 +428,7 @@ static int ngx_conf_read_token(ngx_conf_t *cf)
}
ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
- "unexpected '%c' in %s:%d",
+ "unexpected \"%c\" in %s:%d",
ch, cf->conf_file->file.name.data,
cf->conf_file->line);
@@ -438,7 +448,7 @@ static int ngx_conf_read_token(ngx_conf_t *cf)
case '{':
if (cf->args->nelts == 0) {
ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
- "unexpected '%c' in %s:%d",
+ "unexpected \"%c\" in %s:%d",
ch, cf->conf_file->file.name.data,
cf->conf_file->line);
return NGX_ERROR;
@@ -453,7 +463,7 @@ static int ngx_conf_read_token(ngx_conf_t *cf)
case '}':
if (cf->args->nelts > 0) {
ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
- "unexpected '}' in %s:%d",
+ "unexpected \"}\" in %s:%d",
cf->conf_file->file.name.data,
cf->conf_file->line);
return NGX_ERROR;