c->write->returned_instance = instance;
}
-#if (NGX_DEBUG)
- log = c->log ? c->log : cycle->log;
-#endif
-
if (c->read->instance != instance) {
/*
* that was just closed in this iteration
*/
- ngx_log_debug1(NGX_LOG_DEBUG_EVENT, log, 0,
+ ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
"epoll: stale event " PTR_FMT, c);
continue;
}
+#if (NGX_DEBUG)
+ log = c->log ? c->log : cycle->log;
+#endif
+
ngx_log_debug3(NGX_LOG_DEBUG_EVENT, log, 0,
"epoll: fd:%d ev:%04X d:" PTR_FMT,
c->fd, event_list[i].events, event_list[i].data);
if (*ngx_accept_mutex == 0
&& ngx_atomic_cmp_set(ngx_accept_mutex, 0, ngx_pid))
{
-
ngx_log_debug0(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
"accept mutex locked");
n = recv(c->fd, buf, 1, MSG_PEEK);
+ if (ev->write && n >= 0) {
+ return;
+ }
+
if (n > 0) {
if ((ngx_event_flags & NGX_USE_LEVEL_EVENT) && ev->active) {
if (ngx_del_event(ev, NGX_READ_EVENT, 0) == NGX_ERROR) {