Replace events generic queue with hand-written typesafe version.
[free-sw/xcb/libxcb] / src / xcbint.h
index 34b7197..6a61d18 100644 (file)
@@ -109,16 +109,18 @@ typedef struct _xcb_in {
     _xcb_queue *current_reply;
 
     _xcb_map *replies;
-    _xcb_queue *events;
+    struct event_list *events;
+    struct event_list **events_tail;
     _xcb_list *readers;
 
-    _xcb_queue *pending_replies;
+    struct pending_reply *pending_replies;
+    struct pending_reply **pending_replies_tail;
 } _xcb_in;
 
 int _xcb_in_init(_xcb_in *in);
 void _xcb_in_destroy(_xcb_in *in);
 
-int _xcb_in_expect_reply(XCBConnection *c, unsigned int request, enum workarounds workaround);
+int _xcb_in_expect_reply(XCBConnection *c, unsigned int request, enum workarounds workaround, int flags);
 
 int _xcb_in_read(XCBConnection *c);
 int _xcb_in_read_block(XCBConnection *c, void *buf, int nread);
@@ -142,7 +144,8 @@ void _xcb_xid_destroy(XCBConnection *c);
 
 typedef struct _xcb_ext {
     pthread_mutex_t lock;
-    _xcb_map *extensions;
+    struct lazyreply *extensions;
+    int extensions_size;
 } _xcb_ext;
 
 int _xcb_ext_init(XCBConnection *c);