summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonas Jochmaring2016-05-12 18:49:47 +0200
committerJonas Jochmaring2016-05-12 18:49:47 +0200
commit395cef22dd3c9a5c9fd4a25fc8808d4a1c351354 (patch)
tree1dee5a63e741de79e5e9368a2756bbd108f9c77c
parentf7efddb754edd6a0b2a61c420bb0c9af9cd9154a (diff)
downloadaur-395cef22dd3c9a5c9fd4a25fc8808d4a1c351354.tar.gz
updated to 3.20.4-2
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD13
-rw-r--r--trap_possible_X_error.diff30
3 files changed, 44 insertions, 5 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8ccf88a42806..12f3a646889e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Mon May 9 22:20:21 UTC 2016
+# Thu May 12 16:48:30 UTC 2016
pkgbase = gtk3-light
pkgdesc = GTK3 without colord.
pkgver = 3.20.4
- pkgrel = 1
+ pkgrel = 2
url = http://www.gtk.org/
install = gtk3.install
arch = i686
@@ -42,9 +42,11 @@ pkgbase = gtk3-light
source = https://download.gnome.org/sources/gtk+/3.20/gtk+-3.20.4.tar.xz
source = settings.ini
source = gtk-query-immodules-3.0.hook
+ source = trap_possible_X_error.diff
sha256sums = e7e3aaf54a54dd1c1ca0588939254abe31329e0bcd280a12290d5306b41ea03f
sha256sums = 01fc1d81dc82c4a052ac6e25bf9a04e7647267cc3017bc91f9ce3e63e5eb9202
sha256sums = de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845
+ sha256sums = 1204b67e45938304ce8500c4b9de52af5d2d90bcb4a2e28bc665f5b29803f28d
pkgname = gtk3-light
diff --git a/PKGBUILD b/PKGBUILD
index 53b7b001a370..5d31cfb56640 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,7 +8,7 @@
pkgname=gtk3-light
pkgver=3.20.4
-pkgrel=1
+pkgrel=2
pkgdesc="GTK3 without colord."
arch=(i686 x86_64)
url="http://www.gtk.org/"
@@ -25,14 +25,21 @@ backup=(etc/gtk-3.0/settings.ini)
license=(LGPL)
source=(https://download.gnome.org/sources/gtk+/${pkgver:0:4}/gtk+-$pkgver.tar.xz
settings.ini
- gtk-query-immodules-3.0.hook)
+ gtk-query-immodules-3.0.hook
+ trap_possible_X_error.diff)
sha256sums=('e7e3aaf54a54dd1c1ca0588939254abe31329e0bcd280a12290d5306b41ea03f'
'01fc1d81dc82c4a052ac6e25bf9a04e7647267cc3017bc91f9ce3e63e5eb9202'
- 'de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845')
+ 'de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845'
+ '1204b67e45938304ce8500c4b9de52af5d2d90bcb4a2e28bc665f5b29803f28d')
prepare() {
cd "gtk+-$pkgver"
NOCONFIGURE=1 ./autogen.sh
+
+ # upstream fix for crashes with X servers not supporting XI2
+ # https://bugzilla.gnome.org/show_bug.cgi?id=766233
+ # https://github.com/GNOME/gtk/commit/7e7d7991cc8e7c7a2b50ce6530a8ebafd673516b
+ patch -Np1 -i ${srcdir}/trap_possible_X_error.diff
}
build() {
diff --git a/trap_possible_X_error.diff b/trap_possible_X_error.diff
new file mode 100644
index 000000000000..373d80a43492
--- /dev/null
+++ b/trap_possible_X_error.diff
@@ -0,0 +1,30 @@
+diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
+index f7c79c4..ad65e29 100644
+--- a/gdk/x11/gdkdisplay-x11.c
++++ b/gdk/x11/gdkdisplay-x11.c
+@@ -2881,10 +2881,14 @@ gdk_x11_display_get_default_seat (GdkDisplay *display)
+ {
+ GList *seats, *l;
+ int device_id;
++ gboolean result = FALSE;
+
+ seats = gdk_display_list_seats (display);
+- XIGetClientPointer (GDK_DISPLAY_XDISPLAY (display),
+- None, &device_id);
++
++ gdk_x11_display_error_trap_push (display);
++ result = XIGetClientPointer (GDK_DISPLAY_XDISPLAY (display),
++ None, &device_id);
++ gdk_x11_display_error_trap_pop_ignored (display);
+
+ for (l = seats; l; l = l->next)
+ {
+@@ -2892,7 +2896,7 @@ gdk_x11_display_get_default_seat (GdkDisplay *display)
+
+ pointer = gdk_seat_get_pointer (l->data);
+
+- if (gdk_x11_device_get_id (pointer) == device_id)
++ if (gdk_x11_device_get_id (pointer) == device_id || !result)
+ {
+ GdkSeat *seat = l->data;
+ g_list_free (seats);