summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2013-01-07 00:21:30 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2013-01-07 00:21:30 +0000
commit9c88fb9379c5bccd915f47742d7bea2bcb2e0191 (patch)
tree7c81c0826c02da9a2132c38d001679936f32d2e1 /x11-libs/gtk+
parentUpdate fate snapshot (diff)
downloadgentoo-2-9c88fb9379c5bccd915f47742d7bea2bcb2e0191.tar.gz
gentoo-2-9c88fb9379c5bccd915f47742d7bea2bcb2e0191.tar.bz2
gentoo-2-9c88fb9379c5bccd915f47742d7bea2bcb2e0191.zip
Add upstream fix for print and other dialog window crash. Propagate ~sparc keyword to 3.6.3-rx ebuilds.
(Portage version: 2.2.0_alpha149/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61)
Diffstat (limited to 'x11-libs/gtk+')
-rw-r--r--x11-libs/gtk+/ChangeLog10
-rw-r--r--x11-libs/gtk+/files/gtk+-3.6.3-stylecontext-font-crash.patch61
-rw-r--r--x11-libs/gtk+/gtk+-3.6.3-r1.ebuild4
-rw-r--r--x11-libs/gtk+/gtk+-3.6.3-r2.ebuild (renamed from x11-libs/gtk+/gtk+-3.6.3.ebuild)7
4 files changed, 77 insertions, 5 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog
index f9b24c6a19fd..6c7a26b18499 100644
--- a/x11-libs/gtk+/ChangeLog
+++ b/x11-libs/gtk+/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for x11-libs/gtk+
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.630 2013/01/06 11:20:09 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.631 2013/01/07 00:21:30 tetromino Exp $
+
+*gtk+-3.6.3-r2 (07 Jan 2013)
+
+ 07 Jan 2013; Alexandre Rostovtsev <tetromino@gentoo.org> -gtk+-3.6.3.ebuild,
+ gtk+-3.6.3-r1.ebuild, +gtk+-3.6.3-r2.ebuild,
+ +files/gtk+-3.6.3-stylecontext-font-crash.patch:
+ Add upstream fix for print and other dialog window crash. Propagate ~sparc
+ keyword to 3.6.3-rx ebuilds.
06 Jan 2013; Agostino Sarubbo <ago@gentoo.org> gtk+-3.6.2.ebuild:
Add ~sparc, wrt bug #449220
diff --git a/x11-libs/gtk+/files/gtk+-3.6.3-stylecontext-font-crash.patch b/x11-libs/gtk+/files/gtk+-3.6.3-stylecontext-font-crash.patch
new file mode 100644
index 000000000000..faa0b776a244
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-3.6.3-stylecontext-font-crash.patch
@@ -0,0 +1,61 @@
+From 7f0b30d7d40acaaaa2ecda603903c00544232bb8 Mon Sep 17 00:00:00 2001
+From: Benjamin Otte <otte@redhat.com>
+Date: Sun, 6 Jan 2013 23:08:28 +0100
+Subject: [PATCH] stylecontext: Make font hack not crash
+
+It's a lot uglier now, but it shouldn't crash anymore.
+
+We must update the font description for animations, but we can't free it
+on query, because some paths call gtk_style_context_get_font() twice in
+a row without stopping the use of the first call. So us just creating a
+new font description all the time and unreffing the old one is not a
+good idea. So we just mere the new one into the old one.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=691186
+---
+ gtk/gtkstylecontext.c | 22 +++++++++++++++++-----
+ 1 file changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c
+index bcbea77..f081361 100644
+--- a/gtk/gtkstylecontext.c
++++ b/gtk/gtkstylecontext.c
+@@ -3508,7 +3508,7 @@ gtk_style_context_get_font (GtkStyleContext *context,
+ {
+ GtkStyleContextPrivate *priv;
+ StyleData *data;
+- PangoFontDescription *description;
++ PangoFontDescription *description, *previous;
+
+ g_return_val_if_fail (GTK_IS_STYLE_CONTEXT (context), NULL);
+
+@@ -3520,10 +3520,22 @@ gtk_style_context_get_font (GtkStyleContext *context,
+ /* Yuck, fonts are created on-demand but we don't return a ref.
+ * Do bad things to achieve this requirement */
+ gtk_style_context_get (context, state, "font", &description, NULL);
+- g_object_set_data_full (G_OBJECT (data->store),
+- "font-cache-for-get_font",
+- description,
+- (GDestroyNotify) pango_font_description_free);
++
++ previous = g_object_get_data (G_OBJECT (data->store), "font-cache-for-get_font");
++
++ if (previous)
++ {
++ pango_font_description_merge (previous, description, TRUE);
++ pango_font_description_free (description);
++ description = previous;
++ }
++ else
++ {
++ g_object_set_data_full (G_OBJECT (data->store),
++ "font-cache-for-get_font",
++ description,
++ (GDestroyNotify) pango_font_description_free);
++ }
+
+ return description;
+ }
+--
+1.8.1
+
diff --git a/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild b/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild
index 643749c37b28..afcb03e8d8bf 100644
--- a/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild
+++ b/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild,v 1.1 2013/01/05 14:11:40 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild,v 1.2 2013/01/07 00:21:30 tetromino Exp $
EAPI="5"
@@ -21,7 +21,7 @@ REQUIRED_USE="
|| ( aqua wayland X )
xinerama? ( X )"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# FIXME: introspection data is built against system installation of gtk+:3
# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
diff --git a/x11-libs/gtk+/gtk+-3.6.3.ebuild b/x11-libs/gtk+/gtk+-3.6.3-r2.ebuild
index fe94e4a11fa0..d7d3dc789608 100644
--- a/x11-libs/gtk+/gtk+-3.6.3.ebuild
+++ b/x11-libs/gtk+/gtk+-3.6.3-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.6.3.ebuild,v 1.1 2013/01/04 02:59:00 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.6.3-r2.ebuild,v 1.1 2013/01/07 00:21:30 tetromino Exp $
EAPI="5"
@@ -21,7 +21,7 @@ REQUIRED_USE="
|| ( aqua wayland X )
xinerama? ( X )"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# FIXME: introspection data is built against system installation of gtk+:3
# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
@@ -101,6 +101,9 @@ src_prepare() {
# https://bugzilla.gnome.org/show_bug.cgi?id=654108
epatch "${FILESDIR}/${PN}-3.3.18-fallback-theme.patch"
+ # Crashes when opening various dialogs, bug #450370; fixed in 3.6.4
+ epatch "${FILESDIR}/${P}-stylecontext-font-crash.patch"
+
# Non-working test in gentoo's env
sed 's:\(g_test_add_func ("/ui-tests/keys-events.*\):/*\1*/:g' \
-i gtk/tests/testing.c || die "sed 1 failed"