X-Git-Url: http://git.demorecorder.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fxcbint.h;h=7b32248b659a4831d84c57b848b5255afcdea6be;hb=d69c403cba9bdebd1bd41b62ae7e28f5852248d4;hp=3b51d2ed261218f20f425cccf7c54b9692a988ac;hpb=ed823bf65192a72f8c3060698c9bded9f77d49c2;p=free-sw%2Fxcb%2Flibxcb diff --git a/src/xcbint.h b/src/xcbint.h index 3b51d2e..7b32248 100644 --- a/src/xcbint.h +++ b/src/xcbint.h @@ -32,6 +32,10 @@ #include "config.h" #endif +#ifdef GCC_HAS_VISIBILITY +#pragma GCC visibility push(hidden) +#endif + enum workarounds { WORKAROUND_NONE, WORKAROUND_GLX_GET_FB_CONFIGS_BUG @@ -59,8 +63,6 @@ typedef struct _xcb_out { char queue[4096]; int queue_len; - struct iovec *vec; - int vec_len; unsigned int request; unsigned int request_written; @@ -72,9 +74,8 @@ typedef struct _xcb_out { int _xcb_out_init(_xcb_out *out); void _xcb_out_destroy(_xcb_out *out); -int _xcb_out_write(XCBConnection *c); -int _xcb_out_write_block(XCBConnection *c, struct iovec *vector, size_t count); -int _xcb_out_flush(XCBConnection *c); +int _xcb_out_send(XCBConnection *c, struct iovec **vector, int *count); +int _xcb_out_flush_to(XCBConnection *c, unsigned int request); /* xcb_in.c */ @@ -86,6 +87,7 @@ typedef struct _xcb_in { char queue[4096]; int queue_len; + unsigned int request_expected; unsigned int request_read; unsigned int request_completed; struct reply_list *current_reply; @@ -152,5 +154,10 @@ struct XCBConnection { _xcb_xid xid; }; -int _xcb_conn_wait(XCBConnection *c, const int should_write, pthread_cond_t *cond); +int _xcb_conn_wait(XCBConnection *c, pthread_cond_t *cond, struct iovec **vector, int *count); + +#ifdef GCC_HAS_VISIBILITY +#pragma GCC visibility pop +#endif + #endif