diff options
author | Jonas Jochmaring | 2016-05-12 18:49:47 +0200 |
---|---|---|
committer | Jonas Jochmaring | 2016-05-12 18:49:47 +0200 |
commit | 395cef22dd3c9a5c9fd4a25fc8808d4a1c351354 (patch) | |
tree | 1dee5a63e741de79e5e9368a2756bbd108f9c77c | |
parent | f7efddb754edd6a0b2a61c420bb0c9af9cd9154a (diff) | |
download | aur-395cef22dd3c9a5c9fd4a25fc8808d4a1c351354.tar.gz |
updated to 3.20.4-2
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 13 | ||||
-rw-r--r-- | trap_possible_X_error.diff | 30 |
3 files changed, 44 insertions, 5 deletions
@@ -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 @@ -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); |