summaryrefslogtreecommitdiff
path: root/extra/gtk3
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-11-23 23:15:26 +0000
committerroot <root@rshg054.dnsready.net>2011-11-23 23:15:26 +0000
commit1e1e4927b05d9b242bfe83794e3a98ab2c8f79ef (patch)
tree070846cb6770ab17d394d88c3f0cd3ad3eb89842 /extra/gtk3
parent851ab9aa99e9bda38f88b5f5ade096c9137e11c8 (diff)
Wed Nov 23 23:15:26 UTC 2011
Diffstat (limited to 'extra/gtk3')
-rw-r--r--extra/gtk3/PKGBUILD11
-rw-r--r--extra/gtk3/fix_crash_treeview.patch55
2 files changed, 62 insertions, 4 deletions
diff --git a/extra/gtk3/PKGBUILD b/extra/gtk3/PKGBUILD
index 9f2dc994e..cdbe94d39 100644
--- a/extra/gtk3/PKGBUILD
+++ b/extra/gtk3/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 142690 2011-11-12 18:51:16Z ibiru $
+# $Id: PKGBUILD 143028 2011-11-21 05:59:12Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=gtk3
pkgver=3.2.2
-pkgrel=1
+pkgrel=2
pkgdesc="GTK+ is a multi-platform toolkit (v3)"
arch=('i686' 'x86_64')
url="http://www.gtk.org/"
@@ -14,12 +14,15 @@ options=('!libtool' '!docs')
backup=(etc/gtk-3.0/settings.ini)
license=('LGPL')
source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/3.2/gtk+-$pkgver.tar.xz
- settings.ini)
+ settings.ini
+ fix_crash_treeview.patch)
sha256sums=('f7ec82de393cd7ae2aa45022576400941704709d1f0f35fb0b17f3be1f2e7d84'
- 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621')
+ 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621'
+ 'eb187ef05f3735b24b58cd4c533dc3d4f616103cafba399c009ea3eb519be0b9')
build() {
cd "$srcdir/gtk+-$pkgver"
+ patch -Np1 -R -i "$srcdir/fix_crash_treeview.patch"
CXX=/bin/false ./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
diff --git a/extra/gtk3/fix_crash_treeview.patch b/extra/gtk3/fix_crash_treeview.patch
new file mode 100644
index 000000000..12c6372f1
--- /dev/null
+++ b/extra/gtk3/fix_crash_treeview.patch
@@ -0,0 +1,55 @@
+From 456b19a35adbdc4b098e6da020c3a87cb62ae7f4 Mon Sep 17 00:00:00 2001
+From: Benjamin Otte <otte@redhat.com>
+Date: Thu, 10 Nov 2011 15:52:44 +0000
+Subject: a11y: Fix gcc warning
+
+---
+diff --git a/gtk/a11y/gtktreeviewaccessible.c b/gtk/a11y/gtktreeviewaccessible.c
+index 663bb51..b2ca9ba 100644
+--- a/gtk/a11y/gtktreeviewaccessible.c
++++ b/gtk/a11y/gtktreeviewaccessible.c
+@@ -238,7 +238,7 @@ gtk_tree_view_accessible_initialize (AtkObject *obj,
+ accessible->n_children_deleted = 0;
+
+ accessible->cell_info_by_index = g_hash_table_new_full (g_int_hash,
+- g_int_equal, NULL, cell_info_free);
++ g_int_equal, NULL, (GDestroyNotify) cell_info_free);
+
+ widget = GTK_WIDGET (data);
+ tree_view = GTK_TREE_VIEW (widget);
+--
+cgit v0.9.0.2
+From b25621173734ad1c9cee83802f7ac32ab7df20e7 Mon Sep 17 00:00:00 2001
+From: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+Date: Wed, 09 Nov 2011 13:32:32 +0000
+Subject: gtktreeviewaccessible: use a value_destroy_func with the cell_info_by_index hash
+
+This ensures that we don't leak any GtkTreeViewAccessibleCellInfo when
+re-inserting a new one with the same key.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=663694
+---
+diff --git a/gtk/a11y/gtktreeviewaccessible.c b/gtk/a11y/gtktreeviewaccessible.c
+index 046e253..4ad323c 100644
+--- a/gtk/a11y/gtktreeviewaccessible.c
++++ b/gtk/a11y/gtktreeviewaccessible.c
+@@ -237,7 +237,8 @@ gtk_tree_view_accessible_initialize (AtkObject *obj,
+ accessible->idle_expand_path = NULL;
+ accessible->n_children_deleted = 0;
+
+- accessible->cell_info_by_index = g_hash_table_new (g_int_hash, g_int_equal);
++ accessible->cell_info_by_index = g_hash_table_new_full (g_int_hash,
++ g_int_equal, NULL, cell_info_free);
+
+ widget = GTK_WIDGET (data);
+ tree_view = GTK_TREE_VIEW (widget);
+@@ -2845,7 +2846,6 @@ garbage_collect_cell_data (gpointer data)
+ {
+ if (!cell_info->in_use)
+ {
+- cell_info_free (cell_info);
+ g_hash_table_iter_remove (&iter);
+ }
+ }
+--
+cgit v0.9.0.2