Annotation of /trunk/libxcb/patches/libxcb-1.0-xlib-no-assert-on-lock.patch
Parent Directory | Revision Log
Revision 365 -
(hide 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 | niro | 365 | --- 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 | } |