summaryrefslogtreecommitdiffstats
path: root/abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch
diff options
context:
space:
mode:
authorJames Meyer <James.meyer@operamail.com>2008-10-02 03:19:12 (GMT)
committerJames Meyer <James.meyer@operamail.com>2008-10-02 03:19:12 (GMT)
commit0e2532d4e8f4eed5e047f1db54d5c03ba849ec0a (patch)
treec0aa2c0b53c317be87eacfcb77b63f53f1f415e7 /abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch
downloadlinhes_pkgbuild-0e2532d4e8f4eed5e047f1db54d5c03ba849ec0a.zip
linhes_pkgbuild-0e2532d4e8f4eed5e047f1db54d5c03ba849ec0a.tar.gz
linhes_pkgbuild-0e2532d4e8f4eed5e047f1db54d5c03ba849ec0a.tar.bz2
initial import
Diffstat (limited to 'abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch')
-rw-r--r--abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch b/abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch
new file mode 100644
index 0000000..a29361b
--- /dev/null
+++ b/abs/core/libxcb/xcb_xlib-no-assert-on-lock.patch
@@ -0,0 +1,30 @@
+--- src/xcb_xlib.c.orig 2006-11-25 22:03:30.000000000 +0000
++++ src/xcb_xlib.c 2006-11-25 22:19:28.000000000 +0000
+@@ -38,18 +38,20 @@
+ void xcb_xlib_lock(xcb_connection_t *c)
+ {
+ _xcb_lock_io(c);
+- assert(!c->xlib.lock);
+- c->xlib.lock = 1;
+- c->xlib.thread = pthread_self();
++ if (!c->xlib.lock) {
++ c->xlib.lock = 1;
++ c->xlib.thread = pthread_self();
++ }
+ _xcb_unlock_io(c);
+ }
+
+ void xcb_xlib_unlock(xcb_connection_t *c)
+ {
+ _xcb_lock_io(c);
+- assert(c->xlib.lock);
+- assert(pthread_equal(c->xlib.thread, pthread_self()));
+- c->xlib.lock = 0;
+- pthread_cond_broadcast(&c->xlib.cond);
++ if (c->xlib.lock) {
++ assert(pthread_equal(c->xlib.thread, pthread_self()));
++ c->xlib.lock = 0;
++ pthread_cond_broadcast(&c->xlib.cond);
++ }
+ _xcb_unlock_io(c);
+ }