Contents of /trunk/libxcb/patches/libxcb-1.0-xlib-no-assert-on-lock.patch
Parent Directory | Revision Log
Revision 365 -
(show annotations)
(download)
Fri Sep 28 15:56:07 2007 UTC (17 years ago) by niro
File size: 841 byte(s)
Fri Sep 28 15:56:07 2007 UTC (17 years ago) by niro
File size: 841 byte(s)
-added patch to fix issues with ica-client
1 | --- src/xcb_xlib.c.orig 2006-11-25 22:03:30.000000000 +0000 |
2 | +++ src/xcb_xlib.c 2006-11-25 22:19:28.000000000 +0000 |
3 | @@ -38,18 +38,20 @@ |
4 | void xcb_xlib_lock(xcb_connection_t *c) |
5 | { |
6 | _xcb_lock_io(c); |
7 | - assert(!c->xlib.lock); |
8 | - c->xlib.lock = 1; |
9 | - c->xlib.thread = pthread_self(); |
10 | + if (!c->xlib.lock) { |
11 | + c->xlib.lock = 1; |
12 | + c->xlib.thread = pthread_self(); |
13 | + } |
14 | _xcb_unlock_io(c); |
15 | } |
16 | |
17 | void xcb_xlib_unlock(xcb_connection_t *c) |
18 | { |
19 | _xcb_lock_io(c); |
20 | - assert(c->xlib.lock); |
21 | - assert(pthread_equal(c->xlib.thread, pthread_self())); |
22 | - c->xlib.lock = 0; |
23 | - pthread_cond_broadcast(&c->xlib.cond); |
24 | + if (c->xlib.lock) { |
25 | + assert(pthread_equal(c->xlib.thread, pthread_self())); |
26 | + c->xlib.lock = 0; |
27 | + pthread_cond_broadcast(&c->xlib.cond); |
28 | + } |
29 | _xcb_unlock_io(c); |
30 | } |