Mercurial > hg > nginx-vendor-1-0
comparison src/event/modules/ngx_epoll_module.c @ 644:ad25218fd14b NGINX_1_0_12
nginx 1.0.12
*) Feature: the "TLSv1.1" and "TLSv1.2" parameters of the
"ssl_protocols" directive.
*) Feature: the "if" SSI command supports captures in regular
expressions.
*) Bugfix: the "if" SSI command did not work inside the "block" command.
*) Bugfix: in AIO error handling on FreeBSD.
*) Bugfix: in the OpenSSL library initialization.
*) Bugfix: the "worker_cpu_affinity" directive might not work.
*) Bugfix: the "limit_conn_log_level" and "limit_req_log_level"
directives might not work.
*) Bugfix: the "read_ahead" directive might not work combined with
"try_files" and "open_file_cache".
*) Bugfix: the "proxy_cache_use_stale" directive with "error" parameter
did not return answer from cache if there were no live upstreams.
*) Bugfix: a segmentation fault might occur in a worker process if small
time was used in the "inactive" parameter of the "proxy_cache_path"
directive.
*) Bugfix: responses from cache might hang.
*) Bugfix: in error handling while connecting to a backend.
Thanks to Piotr Sikora.
*) Bugfix: in the "epoll" event method.
Thanks to Yichun Zhang.
*) Bugfix: the $sent_http_cache_control variable might contain a wrong
value if the "expires" directive was used.
Thanks to Yichun Zhang.
*) Bugfix: the "limit_rate" directive did not allow to use full
throughput, even if limit value was very high.
*) Bugfix: the "sendfile_max_chunk" directive did not work, if the
"limit_rate" directive was used.
*) Bugfix: nginx could not be built on Solaris; the bug had appeared in
1.0.11.
*) Bugfix: in the ngx_http_scgi_module.
*) Bugfix: in the ngx_http_mp4_module.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 06 Feb 2012 00:00:00 +0400 |
parents | 0d6525917227 |
children |
comparison
equal
deleted
inserted
replaced
643:d81e1c257a02 | 644:ad25218fd14b |
---|---|
1 | 1 |
2 /* | 2 /* |
3 * Copyright (C) Igor Sysoev | 3 * Copyright (C) Igor Sysoev |
4 * Copyright (C) Nginx, Inc. | |
4 */ | 5 */ |
5 | 6 |
6 | 7 |
7 #include <ngx_config.h> | 8 #include <ngx_config.h> |
8 #include <ngx_core.h> | 9 #include <ngx_core.h> |
681 | 682 |
682 wev = c->write; | 683 wev = c->write; |
683 | 684 |
684 if ((revents & EPOLLOUT) && wev->active) { | 685 if ((revents & EPOLLOUT) && wev->active) { |
685 | 686 |
687 if (c->fd == -1 || wev->instance != instance) { | |
688 | |
689 /* | |
690 * the stale event from a file descriptor | |
691 * that was just closed in this iteration | |
692 */ | |
693 | |
694 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0, | |
695 "epoll: stale event %p", c); | |
696 continue; | |
697 } | |
698 | |
686 if (flags & NGX_POST_THREAD_EVENTS) { | 699 if (flags & NGX_POST_THREAD_EVENTS) { |
687 wev->posted_ready = 1; | 700 wev->posted_ready = 1; |
688 | 701 |
689 } else { | 702 } else { |
690 wev->ready = 1; | 703 wev->ready = 1; |