MHD_epoll(): call handler depending on read/write ready state instead of loop state.

This commit is contained in:
Evgeny Grin (Karlson2k)
2017-02-19 23:10:51 +03:00
parent d9b6e400f8
commit 58cb96811c
+2 -4
View File
@@ -3933,11 +3933,9 @@ MHD_epoll (struct MHD_Daemon *daemon,
while (NULL != (pos = prev))
{
prev = pos->prevE;
/* FIXME: use (0 != pos->epoll_state & MHD_EPOLL_STATE_READ_READY) ? MHD_YES : MHD_NO
* and (0 != pos->epoll_state & MHD_EPOLL_STATE_WRITE_READY) ? MHD_YES : MHD_NO */
call_handlers (pos,
MHD_EVENT_LOOP_INFO_READ == pos->event_loop_info,
MHD_EVENT_LOOP_INFO_WRITE == pos->event_loop_info,
0 != (pos->epoll_state & MHD_EPOLL_STATE_READ_READY),
0 != (pos->epoll_state & MHD_EPOLL_STATE_WRITE_READY),
0 != (pos->epoll_state & MHD_EPOLL_STATE_ERROR));
if (MHD_EPOLL_STATE_IN_EREADY_EDLL ==
(pos->epoll_state & (MHD_EPOLL_STATE_SUSPENDED | MHD_EPOLL_STATE_IN_EREADY_EDLL)))