Mercurial > hg > nginx
comparison src/core/ngx_cycle.c @ 5046:f4809ba58b15 stable-1.2
Merge of r4967: ngx_write_fd() and ngx_read_fd() errors handling.
The ngx_write_fd() and ngx_read_fd() functions return -1 in case of error,
so the incorrect comparison with NGX_FILE_ERROR (which is 0 on windows
platforms) might result in inaccurate error message in the error log.
Also the ngx_errno global variable is being set only if the returned value
is -1.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Sun, 10 Feb 2013 03:55:18 +0000 |
parents | bbcaeccbd928 |
children | 004af18ddb86 |
comparison
equal
deleted
inserted
replaced
5045:63a6b6d70826 | 5046:f4809ba58b15 |
---|---|
1143 | 1143 |
1144 if (file[i].buffer && len != 0) { | 1144 if (file[i].buffer && len != 0) { |
1145 | 1145 |
1146 n = ngx_write_fd(file[i].fd, file[i].buffer, len); | 1146 n = ngx_write_fd(file[i].fd, file[i].buffer, len); |
1147 | 1147 |
1148 if (n == NGX_FILE_ERROR) { | 1148 if (n == -1) { |
1149 ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno, | 1149 ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno, |
1150 ngx_write_fd_n " to \"%s\" failed", | 1150 ngx_write_fd_n " to \"%s\" failed", |
1151 file[i].name.data); | 1151 file[i].name.data); |
1152 | 1152 |
1153 } else if (n != len) { | 1153 } else if (n != len) { |