Преглед на файлове

MHD_connection_epoll_update_(): updated and simplified conditions required
to move connection back to epoll monitoring.

Evgeny Grin (Karlson2k) преди 9 години
родител
ревизия
d93a774bd6
променени са 1 файла, в които са добавени 4 реда и са изтрити 5 реда
  1. 4 5
      src/microhttpd/connection.c

+ 4 - 5
src/microhttpd/connection.c

@@ -3261,11 +3261,10 @@ MHD_connection_epoll_update_ (struct MHD_Connection *connection)
   if ( (0 != (daemon->options & MHD_USE_EPOLL)) &&
        (0 == (connection->epoll_state & MHD_EPOLL_STATE_IN_EPOLL_SET)) &&
        (0 == (connection->epoll_state & MHD_EPOLL_STATE_SUSPENDED)) &&
-       ( (0 == (connection->epoll_state & MHD_EPOLL_STATE_WRITE_READY)) ||
-	 ( (0 == (connection->epoll_state & MHD_EPOLL_STATE_READ_READY)) &&
-	   ( (MHD_EVENT_LOOP_INFO_READ == connection->event_loop_info) ||
-	     (connection->read_buffer_size > connection->read_buffer_offset) ) &&
-	   (! connection->read_closed) ) ) )
+       ( ( (MHD_EVENT_LOOP_INFO_WRITE == connection->event_loop_info) &&
+           (0 == (connection->epoll_state & MHD_EPOLL_STATE_WRITE_READY))) ||
+	 ( (MHD_EVENT_LOOP_INFO_READ == connection->event_loop_info) &&
+	   (0 == (connection->epoll_state & MHD_EPOLL_STATE_READ_READY)) ) ) )
     {
       /* add to epoll set */
       struct epoll_event event;