diff options
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 + |