summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-accessibility/at-spi2-atk/ChangeLog10
-rw-r--r--app-accessibility/at-spi2-atk/at-spi2-atk-2.2.1-r1.ebuild51
-rw-r--r--app-accessibility/at-spi2-atk/files/at-spi2-atk-2.2.1-socket_ref_state_set-NULL.patch66
3 files changed, 126 insertions, 1 deletions
diff --git a/app-accessibility/at-spi2-atk/ChangeLog b/app-accessibility/at-spi2-atk/ChangeLog
index 4191bd28cee4..3d64e445e66c 100644
--- a/app-accessibility/at-spi2-atk/ChangeLog
+++ b/app-accessibility/at-spi2-atk/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for app-accessibility/at-spi2-atk
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-accessibility/at-spi2-atk/ChangeLog,v 1.1 2011/08/14 14:15:31 nirbheek Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-accessibility/at-spi2-atk/ChangeLog,v 1.2 2011/11/05 04:51:01 tetromino Exp $
+
+*at-spi2-atk-2.2.1-r1 (05 Nov 2011)
+
+ 05 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
+ +at-spi2-atk-2.2.1-r1.ebuild,
+ +files/at-spi2-atk-2.2.1-socket_ref_state_set-NULL.patch:
+ Bump to 2.2.1 from the gnome overlay. Notable changes: updates for atk-2.2
+ API, stability improvements.
*at-spi2-atk-2.0.2 (14 Aug 2011)
diff --git a/app-accessibility/at-spi2-atk/at-spi2-atk-2.2.1-r1.ebuild b/app-accessibility/at-spi2-atk/at-spi2-atk-2.2.1-r1.ebuild
new file mode 100644
index 000000000000..22903e00345e
--- /dev/null
+++ b/app-accessibility/at-spi2-atk/at-spi2-atk-2.2.1-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-accessibility/at-spi2-atk/at-spi2-atk-2.2.1-r1.ebuild,v 1.1 2011/11/05 04:51:01 tetromino Exp $
+
+EAPI="4"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit eutils gnome2
+
+DESCRIPTION="Gtk module for bridging AT-SPI to Atk"
+HOMEPAGE="http://live.gnome.org/Accessibility"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+COMMON_DEPEND="
+ >=app-accessibility/at-spi2-core-2.1.4
+ >=dev-libs/atk-2.1.0
+ dev-libs/glib:2
+ >=sys-apps/dbus-1
+ x11-libs/libX11
+"
+RDEPEND="${COMMON_DEPEND}
+ !<gnome-extra/at-spi-1.32.0-r1
+"
+DEPEND="${COMMON_DEPEND}
+ dev-util/pkgconfig
+ >=dev-util/intltool-0.40
+"
+
+pkg_setup() {
+ DOCS="AUTHORS NEWS README"
+ # xevie is deprecated/broken since xorg-1.6/1.7
+ G2CONF="${G2CONF} --enable-p2p"
+}
+
+src_prepare() {
+ # disable teamspaces test since that requires Novell.ICEDesktop.Daemon
+ epatch "${FILESDIR}/${PN}-2.0.2-disable-teamspaces-test.patch"
+ # Upstream patch, will be in next release
+ epatch "${FILESDIR}/${P}-socket_ref_state_set-NULL.patch"
+
+ # FIXME: droute test fails
+ sed -e 's:TESTS = droute-test\.*:TESTS = :' -i droute/Makefile.* ||
+ die "sed droute/Makefile.* failed"
+
+ gnome2_src_prepare
+}
diff --git a/app-accessibility/at-spi2-atk/files/at-spi2-atk-2.2.1-socket_ref_state_set-NULL.patch b/app-accessibility/at-spi2-atk/files/at-spi2-atk-2.2.1-socket_ref_state_set-NULL.patch
new file mode 100644
index 000000000000..5a6ccd61b375
--- /dev/null
+++ b/app-accessibility/at-spi2-atk/files/at-spi2-atk-2.2.1-socket_ref_state_set-NULL.patch
@@ -0,0 +1,66 @@
+From 18d98d35c452678efc2bf09f38fb2d0594641613 Mon Sep 17 00:00:00 2001
+From: Mario Sanchez Prada <msanchez@igalia.com>
+Date: Fri, 28 Oct 2011 20:30:42 +0200
+Subject: [PATCH] Socket's implementation of ref_state_set to return empty
+ sets instead of NULL
+
+Calls to atk_object_ref_state_set() are expected to return a valid
+state set always, so it would be better if this implementation of
+socket's ref_state_set() returned empty sets instead of just NULL, to
+avoid calling to atk_state_set_*() functions over invalid instances of
+AtkStateSet (e.g. add_pending_items() in accessible-cache.c).
+
+https://bugs.freedesktop.org/show_bug.cgi?id=42350
+---
+ atk-adaptor/bridge.c | 16 ++++++++--------
+ 1 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/atk-adaptor/bridge.c b/atk-adaptor/bridge.c
+index d049731..a1ee202 100644
+--- a/atk-adaptor/bridge.c
++++ b/atk-adaptor/bridge.c
+@@ -334,17 +334,19 @@ socket_ref_state_set (AtkObject *accessible)
+ DBusMessageIter iter, iter_array;
+ AtkStateSet *set;
+
++ set = atk_state_set_new ();
++
+ if (!socket->embedded_plug_id)
+- return NULL;
++ return set;
+
+ child_name = g_strdup (socket->embedded_plug_id);
+ if (!child_name)
+- return NULL;
++ return set;
+ child_path = g_utf8_strchr (child_name + 1, -1, ':');
+ if (!child_path)
+ {
+ g_free (child_name);
+- return NULL;
++ return set;
+ }
+ *(child_path++) = '\0';
+ message = dbus_message_new_method_call (child_name, child_path, ATSPI_DBUS_INTERFACE_ACCESSIBLE, "GetState");
+@@ -352,15 +354,13 @@ socket_ref_state_set (AtkObject *accessible)
+ reply = dbus_connection_send_with_reply_and_block (spi_global_app_data->bus, message, 1, NULL);
+ dbus_message_unref (message);
+ if (reply == NULL)
+- return NULL;
++ return set;
+ if (strcmp (dbus_message_get_signature (reply), "au") != 0)
+ {
+ dbus_message_unref (reply);
+- return NULL;
++ return set;
+ }
+- set = atk_state_set_new ();
+- if (!set)
+- return NULL;
++
+ dbus_message_iter_init (reply, &iter);
+ dbus_message_iter_recurse (&iter, &iter_array);
+ do
+--
+1.7.7.2
+