aboutsummaryrefslogtreecommitdiff
path: root/src/microhttpd/connection.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/microhttpd/connection.c')
-rw-r--r--src/microhttpd/connection.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c
index 9c6403fd..6b1ad54e 100644
--- a/src/microhttpd/connection.c
+++ b/src/microhttpd/connection.c
@@ -5301,10 +5301,20 @@ MHD_connection_handle_idle (struct MHD_Connection *connection)
5301enum MHD_Result 5301enum MHD_Result
5302MHD_connection_epoll_update_ (struct MHD_Connection *connection) 5302MHD_connection_epoll_update_ (struct MHD_Connection *connection)
5303{ 5303{
5304 struct MHD_Daemon *daemon = connection->daemon; 5304 struct MHD_Daemon *const daemon = connection->daemon;
5305 5305
5306 if ( (0 != (daemon->options & MHD_USE_EPOLL)) && 5306 mhd_assert (0 != (daemon->options & MHD_USE_EPOLL));
5307 (0 == (connection->epoll_state & MHD_EPOLL_STATE_IN_EPOLL_SET)) && 5307
5308 if ((0 != (MHD_EVENT_LOOP_INFO_PROCESS & connection->event_loop_info)) &&
5309 (0 == (connection->epoll_state & MHD_EPOLL_STATE_IN_EREADY_EDLL)))
5310 {
5311 /* Make sure that connection waiting for processing will be processed */
5312 EDLL_insert (daemon->eready_head,
5313 daemon->eready_tail,
5314 connection);
5315 }
5316
5317 if ( (0 == (connection->epoll_state & MHD_EPOLL_STATE_IN_EPOLL_SET)) &&
5308 (0 == (connection->epoll_state & MHD_EPOLL_STATE_SUSPENDED)) && 5318 (0 == (connection->epoll_state & MHD_EPOLL_STATE_SUSPENDED)) &&
5309 ( ( (MHD_EVENT_LOOP_INFO_WRITE == connection->event_loop_info) && 5319 ( ( (MHD_EVENT_LOOP_INFO_WRITE == connection->event_loop_info) &&
5310 (0 == (connection->epoll_state & MHD_EPOLL_STATE_WRITE_READY))) || 5320 (0 == (connection->epoll_state & MHD_EPOLL_STATE_WRITE_READY))) ||