projects
/
free-sw
/
xcb
/
libxcb
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add xcb_xlib_lock and xcb_xlib_unlock, a special-purpose two-level recursive lock...
[free-sw/xcb/libxcb]
/
src
/
xcbint.h
diff --git
a/src/xcbint.h
b/src/xcbint.h
index
1dc6f93
..
d81e787
100644
(file)
--- a/
src/xcbint.h
+++ b/
src/xcbint.h
@@
-113,6
+113,15
@@
int _xcb_in_read(xcb_connection_t *c);
int _xcb_in_read_block(xcb_connection_t *c, void *buf, int nread);
int _xcb_in_read_block(xcb_connection_t *c, void *buf, int nread);
+/* xcb_xlib.c */
+
+typedef struct _xcb_xlib {
+ int lock;
+ pthread_t thread;
+ pthread_cond_t cond;
+} _xcb_xlib;
+
+
/* xcb_xid.c */
typedef struct _xcb_xid {
/* xcb_xid.c */
typedef struct _xcb_xid {
@@
-150,6
+159,7
@@
struct xcb_connection_t {
/* I/O data */
pthread_mutex_t iolock;
/* I/O data */
pthread_mutex_t iolock;
+ _xcb_xlib xlib;
_xcb_in in;
_xcb_out out;
_xcb_in in;
_xcb_out out;
@@
-159,8
+169,6
@@
struct xcb_connection_t {
};
void _xcb_conn_shutdown(xcb_connection_t *c);
};
void _xcb_conn_shutdown(xcb_connection_t *c);
-void _xcb_lock_io(xcb_connection_t *c);
-void _xcb_unlock_io(xcb_connection_t *c);
int _xcb_conn_wait(xcb_connection_t *c, pthread_cond_t *cond, struct iovec **vector, int *count);
int _xcb_conn_wait(xcb_connection_t *c, pthread_cond_t *cond, struct iovec **vector, int *count);
@@
-172,4
+180,10
@@
int _xcb_get_auth_info(int fd, xcb_auth_info_t *info);
#pragma GCC visibility pop
#endif
#pragma GCC visibility pop
#endif
+
+/* xcb_conn.c symbols visible to xcb-xlib */
+
+void _xcb_lock_io(xcb_connection_t *c);
+void _xcb_unlock_io(xcb_connection_t *c);
+
#endif
#endif