Mercurial > hg > nginx
comparison src/http/ngx_http_spdy.c @ 5325:abf7813b927e
SPDY: alert about activated fake events instead of deleting them.
They refer to the same socket descriptor as our real connection, and
deleting them will stop processing of the connection.
Events of fake connections must not be activated, and if it happened there
is nothing we can do. The whole processing should be terminated as soon as
possible, but it is not obvious how to do this safely.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Thu, 15 Aug 2013 19:16:12 +0400 |
parents | 8ef1722143dc |
children | 4d0c70541784 |
comparison
equal
deleted
inserted
replaced
5324:8ef1722143dc | 5325:abf7813b927e |
---|---|
2661 ngx_http_free_request(stream->request, rc); | 2661 ngx_http_free_request(stream->request, rc); |
2662 | 2662 |
2663 ev = fc->read; | 2663 ev = fc->read; |
2664 | 2664 |
2665 if (ev->active || ev->disabled) { | 2665 if (ev->active || ev->disabled) { |
2666 ngx_del_event(ev, NGX_READ_EVENT, 0); | 2666 ngx_log_error(NGX_LOG_ALERT, sc->connection->log, 0, |
2667 "spdy fake read event was activated"); | |
2667 } | 2668 } |
2668 | 2669 |
2669 if (ev->timer_set) { | 2670 if (ev->timer_set) { |
2670 ngx_del_timer(ev); | 2671 ngx_del_timer(ev); |
2671 } | 2672 } |
2675 } | 2676 } |
2676 | 2677 |
2677 ev = fc->write; | 2678 ev = fc->write; |
2678 | 2679 |
2679 if (ev->active || ev->disabled) { | 2680 if (ev->active || ev->disabled) { |
2680 ngx_del_event(ev, NGX_WRITE_EVENT, 0); | 2681 ngx_log_error(NGX_LOG_ALERT, sc->connection->log, 0, |
2682 "spdy fake write event was activated"); | |
2681 } | 2683 } |
2682 | 2684 |
2683 if (ev->timer_set) { | 2685 if (ev->timer_set) { |
2684 ngx_del_timer(ev); | 2686 ngx_del_timer(ev); |
2685 } | 2687 } |