summaryrefslogtreecommitdiff
path: root/src/xcbint.h
diff options
context:
space:
mode:
authorJamey Sharp <jamey@minilop.net>2006-02-18 18:12:40 -0800
committerJamey Sharp <jamey@minilop.net>2006-02-18 18:12:40 -0800
commit5b7182c659391160239467f1041a1d755db45bd3 (patch)
tree1e4a54f0f1b822c0983c4e38355e4c836af4058a /src/xcbint.h
parent47ceed78612d48dcda62cc2686fc527d61abe38b (diff)
Workaround X server bug, fd.o #3210: if a GLXGetFBConfigs request is sent, fix the length field in the reply.
Diffstat (limited to 'src/xcbint.h')
-rw-r--r--src/xcbint.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/xcbint.h b/src/xcbint.h
index 057a315..9cb0c30 100644
--- a/src/xcbint.h
+++ b/src/xcbint.h
@@ -38,6 +38,11 @@
_xcb_assert_sequence_less((c)->out.request_written, (c)->out.request); \
} while(0)
+enum workarounds {
+ WORKAROUND_NONE,
+ WORKAROUND_GLX_GET_FB_CONFIGS_BUG
+};
+
/* xcb_list.c */
typedef struct _xcb_list _xcb_list;
@@ -125,12 +130,14 @@ typedef struct _xcb_in {
_xcb_map *replies;
_xcb_queue *events;
_xcb_list *readers;
+
+ _xcb_queue *pending_replies;
} _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);
+int _xcb_in_expect_reply(XCBConnection *c, unsigned int request, enum workarounds workaround);
int _xcb_in_read_packet(XCBConnection *c);
int _xcb_in_read(XCBConnection *c);