mirror of
https://github.com/nginx/nginx.git
synced 2026-08-27 04:07:18 +00:00
Skipping spaces in configuration files (ticket #1557).
Previously, a chunk of spaces larger than NGX_CONF_BUFFER (4096 bytes) resulted in the "too long parameter" error during parsing such a configuration. This was because the code only set start and start_line on non-whitespace characters, and hence adjacent whitespace characters were preserved when reading additional data from the configuration file. Fix is to always move start and start_line if the last character was a space.
This commit is contained in:
parent
3b1589173f
commit
dd8e1e178c
1 changed files with 4 additions and 3 deletions
|
|
@ -656,13 +656,14 @@ ngx_conf_read_token(ngx_conf_t *cf)
|
|||
}
|
||||
|
||||
if (last_space) {
|
||||
if (ch == ' ' || ch == '\t' || ch == CR || ch == LF) {
|
||||
continue;
|
||||
}
|
||||
|
||||
start = b->pos - 1;
|
||||
start_line = cf->conf_file->line;
|
||||
|
||||
if (ch == ' ' || ch == '\t' || ch == CR || ch == LF) {
|
||||
continue;
|
||||
}
|
||||
|
||||
switch (ch) {
|
||||
|
||||
case ';':
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue