Add <sys/select.h> to xcb_in.c to fix bug #6122.
[free-sw/xcb/libxcb] / src / xcb_in.c
index 15bc915..ecacb99 100644 (file)
@@ -30,6 +30,7 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <stdio.h>
+#include <sys/select.h>
 #include <errno.h>
 
 #include "xcb.h"
@@ -312,9 +313,7 @@ void *XCBWaitForReply(XCBConnection *c, unsigned int request, XCBGenericError **
         reader_list **prev_reader;
 
         for(prev_reader = &c->in.readers; *prev_reader && (*prev_reader)->request <= request; prev_reader = &(*prev_reader)->next)
-            if((*prev_reader)->request == request)
-                goto done; /* error */
-
+            /* empty */;
         reader.request = request;
         reader.data = &cond;
         reader.next = *prev_reader;
@@ -324,7 +323,6 @@ void *XCBWaitForReply(XCBConnection *c, unsigned int request, XCBGenericError **
             if(!_xcb_conn_wait(c, &cond, 0, 0))
                 break;
 
-done:
         for(prev_reader = &c->in.readers; *prev_reader && (*prev_reader)->request <= request; prev_reader = &(*prev_reader)->next)
             if(*prev_reader == &reader)
             {