Alexandre Julliard : server: Reset events on the message queue fd to avoid busy looping when the thread is suspended .

Alexandre Julliard julliard at winehq.org
Wed Jun 3 09:31:14 CDT 2009


Module: wine
Branch: master
Commit: 2d69ba45d7b815caafcde13a886ebbed45561dba
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2d69ba45d7b815caafcde13a886ebbed45561dba

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Tue Jun  2 22:14:40 2009 +0200

server: Reset events on the message queue fd to avoid busy looping when the thread is suspended.

---

 server/queue.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/server/queue.c b/server/queue.c
index bc0aea7..e603b16 100644
--- a/server/queue.c
+++ b/server/queue.c
@@ -872,6 +872,7 @@ static void msg_queue_poll_event( struct fd *fd, int event )
     assert( queue->obj.ops == &msg_queue_ops );
 
     if (event & (POLLERR | POLLHUP)) set_fd_events( fd, -1 );
+    else set_fd_events( queue->fd, 0 );
     wake_up( &queue->obj, 0 );
 }
 




More information about the wine-cvs mailing list