summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMart Raudsepp <leio@gentoo.org>2008-09-29 07:40:37 +0000
committerMart Raudsepp <leio@gentoo.org>2008-09-29 07:40:37 +0000
commit0f7ad1b628d64fe70c71caad900869973a50649d (patch)
treebd071bab7cb700ff2d5cc83615b3307c82f4f39a /x11-libs/gtk+
parentVersion bump, fixes security issues, bug #238113, thank Robert Buchholz for r... (diff)
downloadgentoo-2-0f7ad1b628d64fe70c71caad900869973a50649d.tar.gz
gentoo-2-0f7ad1b628d64fe70c71caad900869973a50649d.tar.bz2
gentoo-2-0f7ad1b628d64fe70c71caad900869973a50649d.zip
Add a few fixes from upstream unreleased code
(Portage version: 2.2_rc11/cvs/Linux 2.6.26-gentoo-r1 x86_64)
Diffstat (limited to 'x11-libs/gtk+')
-rw-r--r--x11-libs/gtk+/ChangeLog13
-rw-r--r--x11-libs/gtk+/files/gtk+-2.14.3-dont-unset-filechooser-filter-after-first-use.patch19
-rw-r--r--x11-libs/gtk+/files/gtk+-2.14.3-fix-filesystem-double-free.patch19
-rw-r--r--x11-libs/gtk+/files/gtk+-2.14.3-fix-lpr_write-double-free.patch22
-rw-r--r--x11-libs/gtk+/files/gtk+-2.14.3-fix-password-dialog-on-mount.patch30
-rw-r--r--x11-libs/gtk+/files/gtk+-2.14.3-notebook-tab-draw-correctness.patch56
-rw-r--r--x11-libs/gtk+/gtk+-2.14.3-r1.ebuild (renamed from x11-libs/gtk+/gtk+-2.14.3.ebuild)9
7 files changed, 166 insertions, 2 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog
index 7b295b4cd7cb..1fcc07cbb9f6 100644
--- a/x11-libs/gtk+/ChangeLog
+++ b/x11-libs/gtk+/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for x11-libs/gtk+
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.399 2008/09/28 10:36:40 leio Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.400 2008/09/29 07:40:36 leio Exp $
+
+*gtk+-2.14.3-r1 (29 Sep 2008)
+
+ 29 Sep 2008; Mart Raudsepp <leio@gentoo.org>
+ +files/gtk+-2.14.3-dont-unset-filechooser-filter-after-first-use.patch,
+ +files/gtk+-2.14.3-fix-filesystem-double-free.patch,
+ +files/gtk+-2.14.3-fix-lpr_write-double-free.patch,
+ +files/gtk+-2.14.3-fix-password-dialog-on-mount.patch,
+ +files/gtk+-2.14.3-notebook-tab-draw-correctness.patch,
+ -gtk+-2.14.3.ebuild, +gtk+-2.14.3-r1.ebuild:
+ Add a few fixes from upstream unreleased code
28 Sep 2008; Mart Raudsepp <leio@gentoo.org>
+files/gtk+-2.14.3-limit-gtksignal-includes.patch, gtk+-2.14.3.ebuild:
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-dont-unset-filechooser-filter-after-first-use.patch b/x11-libs/gtk+/files/gtk+-2.14.3-dont-unset-filechooser-filter-after-first-use.patch
new file mode 100644
index 000000000000..e3c5e923bdf8
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.14.3-dont-unset-filechooser-filter-after-first-use.patch
@@ -0,0 +1,19 @@
+2008-09-26 Matthias Clasen
+
+ Bug 553211 – GtkFileChooserButton unsets filter after first use
+
+ * gtk/gtkfilechooserdefault.c (show_and_select_files): Also
+ get the content-type, since it is used later on.
+ Pointed out by Davyd Madeley.
+
+--- branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/27 00:20:42 21527
++++ branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/27 00:21:43 21528
+@@ -6502,7 +6502,7 @@
+
+ impl->show_and_select_files_cancellable =
+ _gtk_file_system_get_folder (impl->file_system, parent_file,
+- "standard::is-hidden,standard::type,standard::name",
++ "standard::is-hidden,standard::type,standard::name,standard::content-type",
+ show_and_select_files_get_folder_cb, info);
+
+ profile_end ("end", NULL);
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-fix-filesystem-double-free.patch b/x11-libs/gtk+/files/gtk+-2.14.3-fix-filesystem-double-free.patch
new file mode 100644
index 000000000000..16d9d9b1f366
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.14.3-fix-filesystem-double-free.patch
@@ -0,0 +1,19 @@
+From gtk-2-14 branch:
+
+2008-09-25 Michael Natterer
+
+ gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
+ don't unref the file system backend, the newly added
+ unset_file_system_backend() already does this (bug #553135).
+
+--- branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/25 11:22:34 21514
++++ branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/25 11:23:42 21515
+@@ -934,8 +934,6 @@
+
+ shortcuts_free (impl);
+
+- g_object_unref (impl->file_system);
+-
+ g_free (impl->browse_files_last_selected_name);
+
+ for (l = impl->filters; l; l = l->next)
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-fix-lpr_write-double-free.patch b/x11-libs/gtk+/files/gtk+-2.14.3-fix-lpr_write-double-free.patch
new file mode 100644
index 000000000000..df844b1f667c
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.14.3-fix-lpr_write-double-free.patch
@@ -0,0 +1,22 @@
+From gtk-2-14 branch:
+
+2008-09-25 Marek Kasik
+
+ Bug 553241 – double freed pointer in lpr_write cause firefox3 crash
+
+ * modules/printbackends/lpr/gtkprintbackendlpr.c:
+ The redundant freeing of memory was removed.
+
+ Patch by Chris Wang
+
+--- branches/gtk-2-14/modules/printbackends/lpr/gtkprintbackendlpr.c 2008/09/25 11:46:35 21516
++++ branches/gtk-2-14/modules/printbackends/lpr/gtkprintbackendlpr.c 2008/09/25 11:57:56 21517
+@@ -289,8 +289,6 @@
+ lpr_print_cb (GTK_PRINT_BACKEND_LPR (ps->backend),
+ error, user_data);
+
+- if (error)
+- g_error_free (error);
+
+ if (error != NULL)
+ {
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-fix-password-dialog-on-mount.patch b/x11-libs/gtk+/files/gtk+-2.14.3-fix-password-dialog-on-mount.patch
new file mode 100644
index 000000000000..08fa13524d91
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.14.3-fix-password-dialog-on-mount.patch
@@ -0,0 +1,30 @@
+From gtk-2-14 branch:
+
+2008-09-26 Matthias Clasen
+
+ Bug 553133 – GtkFileChooser won't ask to mount a volume
+
+ * gtk/gtkfilechooserdefault.c (shortcuts_activate_volume): Use
+ a GtkMountOperation when mounting, so that we get a password
+ dialog when required.
+
+--- branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/26 19:25:35 21523
++++ branches/gtk-2-14/gtk/gtkfilechooserdefault.c 2008/09/26 19:45:13 21524
+@@ -10192,12 +10192,16 @@
+
+ if (!_gtk_file_system_volume_is_mounted (volume))
+ {
++ GtkMountOperation *mount_op;
++
+ set_busy_cursor (impl, TRUE);
+
++ mount_op = gtk_mount_operation_new (get_toplevel (GTK_WIDGET (impl)));
+ impl->shortcuts_activate_iter_cancellable =
+- _gtk_file_system_mount_volume (impl->file_system, volume, NULL,
++ _gtk_file_system_mount_volume (impl->file_system, volume, mount_op,
+ shortcuts_activate_volume_mount_cb,
+ g_object_ref (impl));
++ g_object_unref (mount_op);
+ }
+ else
+ {
diff --git a/x11-libs/gtk+/files/gtk+-2.14.3-notebook-tab-draw-correctness.patch b/x11-libs/gtk+/files/gtk+-2.14.3-notebook-tab-draw-correctness.patch
new file mode 100644
index 000000000000..9afe39c488f8
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.14.3-notebook-tab-draw-correctness.patch
@@ -0,0 +1,56 @@
+From gtk-2-14 branch:
+
+2008-09-26 Matthias Clasen
+
+ Bug 553578 - tabs are not drawn correctly
+
+ * gtk/gtknotebook.c: Track the visibility state of notebook tabs
+ between allocations so that we know to redraw the tab labels if
+ tabs are hidden and shown without changing position.
+ Reported by Marek Kašík, patch by Owen Taylor.
+
+--- branches/gtk-2-14/gtk/gtknotebook.c 2008/09/26 23:58:12 21525
++++ branches/gtk-2-14/gtk/gtknotebook.c 2008/09/27 00:00:32 21526
+@@ -153,6 +153,11 @@
+ guint reorderable : 1;
+ guint detachable : 1;
+
++ /* if true, the tab label was visible on last allocation; we track this so
++ * that we know to redraw the tab area if a tab label was hidden then shown
++ * without changing position */
++ guint tab_allocated_visible : 1;
++
+ GtkRequisition requisition;
+ GtkAllocation allocation;
+
+@@ -5556,9 +5561,15 @@
+ gint tab_curvature;
+ gint tab_pos = get_effective_tab_pos (notebook);
+ gboolean tab_allocation_changed;
++ gboolean was_visible = page->tab_allocated_visible;
+
+- if (!page->tab_label)
+- return FALSE;
++ if (!page->tab_label ||
++ !GTK_WIDGET_VISIBLE (page->tab_label) ||
++ !gtk_widget_get_child_visible (page->tab_label))
++ {
++ page->tab_allocated_visible = FALSE;
++ return was_visible;
++ }
+
+ xthickness = widget->style->xthickness;
+ ythickness = widget->style->ythickness;
+@@ -5630,6 +5641,12 @@
+
+ gtk_widget_size_allocate (page->tab_label, &child_allocation);
+
++ if (!was_visible)
++ {
++ page->tab_allocated_visible = TRUE;
++ tab_allocation_changed = TRUE;
++ }
++
+ return tab_allocation_changed;
+ }
+
diff --git a/x11-libs/gtk+/gtk+-2.14.3.ebuild b/x11-libs/gtk+/gtk+-2.14.3-r1.ebuild
index 2aaf6966017f..8709a84129de 100644
--- a/x11-libs/gtk+/gtk+-2.14.3.ebuild
+++ b/x11-libs/gtk+/gtk+-2.14.3-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-2.14.3.ebuild,v 1.3 2008/09/28 10:40:35 leio Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-2.14.3-r1.ebuild,v 1.1 2008/09/29 07:40:36 leio Exp $
WANT_AUTOMAKE="1.7"
@@ -75,6 +75,13 @@ src_unpack() {
# Workaround adobe flash infinite loop. Patch from http://bugzilla.gnome.org/show_bug.cgi?id=463773#c11
epatch "${FILESDIR}/${PN}-2.12.0-flash-workaround.patch"
+ # Various fixes from upstream gtk-2-14 branch, will be part of 2.14.4
+ epatch "${FILESDIR}/${P}-fix-filesystem-double-free.patch"
+ epatch "${FILESDIR}/${P}-fix-lpr_write-double-free.patch"
+ epatch "${FILESDIR}/${P}-fix-password-dialog-on-mount.patch"
+ epatch "${FILESDIR}/${P}-notebook-tab-draw-correctness.patch"
+ epatch "${FILESDIR}/${P}-dont-unset-filechooser-filter-after-first-use.patch"
+
# Don't break inclusion of gtkclist.h, upstream bug 536767
epatch "${FILESDIR}/${P}-limit-gtksignal-includes.patch"