# ChangeLog for x11-libs/libX11
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/libX11/ChangeLog,v 1.57 2006/11/04 06:15:56 joshuabaergen Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libX11/ChangeLog,v 1.58 2006/11/15 03:04:49 joshuabaergen Exp $
+
+*libX11-1.0.99.2-r1 (15 Nov 2006)
+
+ 15 Nov 2006; Joshua Baergen <joshuabaergen@gentoo.org>
+ +files/1.0.99.2-xcb_callback_fix.patch, -libX11-1.0.99.2.ebuild,
+ +libX11-1.0.99.2-r1.ebuild:
+ Add a locking fix from upstream. Fixes more issues when xcb is enabled.
*libX11-1.0.3-r1 (04 Nov 2006)
--- /dev/null
+commit 941f02ede63baa46f93ed8abccebe76fb29c0789
+Author: Lars Knoll <lars@trolltech.com>
+Date: Wed Nov 8 12:17:41 2006 -0800
+
+ Don't hold the display lock around callbacks to the application.
+
+ This fixes an XCB locking assertion failure, particularly with emacs.
+
+diff --git a/src/FilterEv.c b/src/FilterEv.c
+index 0117291..9fa1887 100644
+--- a/src/FilterEv.c
++++ b/src/FilterEv.c
+@@ -96,9 +96,9 @@ XFilterEvent(ev, window)
+ if (win == p->window) {
+ if ((mask & p->event_mask) ||
+ (ev->type >= p->start_type && ev->type <= p->end_type)) {
++ UnlockDisplay(ev->xany.display);
+ ret = (*(p->filter))(ev->xany.display, p->window, ev,
+ p->client_data);
+- UnlockDisplay(ev->xany.display);
+ return(ret);
+ }
+ }
--- /dev/null
+MD5 dd6926633daaf267ef39ad4f23622529 libX11-1.0.99.2.tar.bz2 1421714
+RMD160 1c9d280cc3f0b5f08f26bedecd9875e4d0a74981 libX11-1.0.99.2.tar.bz2 1421714
+SHA256 8d9f00f627bf70e835e191e2e0403d2420ec0482cbead4ea96acabce6c340bda libX11-1.0.99.2.tar.bz2 1421714
--- /dev/null
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libX11/libX11-1.0.99.2-r1.ebuild,v 1.1 2006/11/15 03:04:49 joshuabaergen Exp $
+
+# Must be before x-modular eclass is inherited
+#SNAPSHOT="yes"
+
+inherit x-modular
+
+DESCRIPTION="X.Org X11 library"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="ipv6 xcb"
+RDEPEND=">=x11-libs/xtrans-1.0.1
+ x11-libs/libXau
+ x11-libs/libXdmcp
+ x11-proto/kbproto
+ x11-proto/inputproto
+ >=x11-proto/xproto-7.0.6
+ xcb? ( >=x11-libs/libxcb-0.9.92 )"
+DEPEND="${RDEPEND}
+ x11-proto/xf86bigfontproto
+ x11-proto/bigreqsproto
+ x11-proto/xextproto
+ x11-proto/xcmiscproto
+ >=x11-misc/util-macros-0.99.0_p20051007"
+
+CONFIGURE_OPTIONS="$(use_enable ipv6)
+ $(use_with xcb)"
+# xorg really doesn't like xlocale disabled.
+# $(use_enable nls xlocale)
+
+pkg_setup() {
+ if use xcb; then
+ PATCHES="${FILESDIR}/${PV}-xcb_callback_fix.patch"
+ fi
+}