From b11d78a1343b5098ce9636df3ff868abb129f96b Mon Sep 17 00:00:00 2001 From: Joshua Baergen Date: Wed, 15 Nov 2006 03:04:49 +0000 Subject: [PATCH] Add a locking fix from upstream. Fixes more issues when xcb is enabled. Package-Manager: portage-2.1.2_rc1-r6 --- x11-libs/libX11/ChangeLog | 9 ++++- .../files/1.0.99.2-xcb_callback_fix.patch | 23 ++++++++++++ .../libX11/files/digest-libX11-1.0.99.2-r1 | 3 ++ x11-libs/libX11/libX11-1.0.99.2-r1.ebuild | 37 +++++++++++++++++++ 4 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 x11-libs/libX11/files/1.0.99.2-xcb_callback_fix.patch create mode 100644 x11-libs/libX11/files/digest-libX11-1.0.99.2-r1 create mode 100644 x11-libs/libX11/libX11-1.0.99.2-r1.ebuild diff --git a/x11-libs/libX11/ChangeLog b/x11-libs/libX11/ChangeLog index e7560232653f..7759518676b1 100644 --- a/x11-libs/libX11/ChangeLog +++ b/x11-libs/libX11/ChangeLog @@ -1,6 +1,13 @@ # 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 + +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) diff --git a/x11-libs/libX11/files/1.0.99.2-xcb_callback_fix.patch b/x11-libs/libX11/files/1.0.99.2-xcb_callback_fix.patch new file mode 100644 index 000000000000..f805c17ac614 --- /dev/null +++ b/x11-libs/libX11/files/1.0.99.2-xcb_callback_fix.patch @@ -0,0 +1,23 @@ +commit 941f02ede63baa46f93ed8abccebe76fb29c0789 +Author: Lars Knoll +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); + } + } diff --git a/x11-libs/libX11/files/digest-libX11-1.0.99.2-r1 b/x11-libs/libX11/files/digest-libX11-1.0.99.2-r1 new file mode 100644 index 000000000000..c27ad21d46cd --- /dev/null +++ b/x11-libs/libX11/files/digest-libX11-1.0.99.2-r1 @@ -0,0 +1,3 @@ +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 diff --git a/x11-libs/libX11/libX11-1.0.99.2-r1.ebuild b/x11-libs/libX11/libX11-1.0.99.2-r1.ebuild new file mode 100644 index 000000000000..676eef8b25c9 --- /dev/null +++ b/x11-libs/libX11/libX11-1.0.99.2-r1.ebuild @@ -0,0 +1,37 @@ +# 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 +} -- 2.26.2