summaryrefslogtreecommitdiff
path: root/gnu/packages/patches
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2019-03-29 23:28:45 -0400
committerMark H Weaver <mhw@netris.org>2019-03-30 02:34:24 -0400
commitbc91562939ee002e84c95d13c907482b6d1e9339 (patch)
tree9daa889a8e2d937ce80ca4d402ec8a66260ea3f7 /gnu/packages/patches
parentc948cf90925dee5c07119140636e78877e9374b4 (diff)
gnu: gtk+: Graft upstream fix for crashes in Emacs and IceCat.
Fixes <https://bugs.gnu.org/34454>. * gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gtk.scm (gtk+/fixed): New variable. (gtk+)[replacement]: New field.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r--gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
new file mode 100644
index 0000000000..e933555ffb
--- /dev/null
+++ b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
@@ -0,0 +1,28 @@
+Copied from <https://gitlab.gnome.org/GNOME/gtk/commit/e3a1593a>.
+Fixes upstream bugs <https://gitlab.gnome.org/GNOME/gtk/issues/1523>
+and <https://gitlab.gnome.org/GNOME/gtk/issues/1280>.
+
+diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
+index 97ada6d73919fba3dfe192dd66929e90bc7677bb..764e39495f7edb0c3efe41cca25b8bee4778887d 100644
+--- a/gdk/x11/gdkwindow-x11.c
++++ b/gdk/x11/gdkwindow-x11.c
+@@ -2985,6 +2985,7 @@ gdk_window_x11_set_background (GdkWindow *window,
+ double r, g, b, a;
+ cairo_surface_t *surface;
+ cairo_matrix_t matrix;
++ cairo_pattern_t *parent_relative_pattern;
+
+ if (GDK_WINDOW_DESTROYED (window))
+ return;
+@@ -2997,8 +2998,10 @@ gdk_window_x11_set_background (GdkWindow *window,
+ }
+
+ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+- if (pattern == gdk_x11_get_parent_relative_pattern ())
++ parent_relative_pattern = gdk_x11_get_parent_relative_pattern ();
+ G_GNUC_END_IGNORE_DEPRECATIONS
++
++ if (pattern == parent_relative_pattern)
+ {
+ GdkWindow *parent;
+