diff options
author | Matthias Clasen <mclasen@redhat.com> | 2010-11-12 19:25:12 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2010-11-12 19:25:12 -0500 |
commit | 87b48380318aa09a8f2a9a77352413c32ac2a48b (patch) | |
tree | bd8de2ce0b5d8eba7e22f1776b33a74d3b914b5b | |
parent | Bump glib dep (diff) | |
download | gtk3-classic-build-gtk3-87b48380318aa09a8f2a9a77352413c32ac2a48b.tar.gz gtk3-classic-build-gtk3-87b48380318aa09a8f2a9a77352413c32ac2a48b.tar.bz2 gtk3-classic-build-gtk3-87b48380318aa09a8f2a9a77352413c32ac2a48b.zip |
fix a gnome-terminal problem
-rw-r--r-- | 0001-Fix-a-crash-in-gnome-terminal-when-using-a-composito.patch | 39 | ||||
-rw-r--r-- | gtk3.spec | 9 |
2 files changed, 47 insertions, 1 deletions
diff --git a/0001-Fix-a-crash-in-gnome-terminal-when-using-a-composito.patch b/0001-Fix-a-crash-in-gnome-terminal-when-using-a-composito.patch new file mode 100644 index 0000000..9ed807b --- /dev/null +++ b/0001-Fix-a-crash-in-gnome-terminal-when-using-a-composito.patch @@ -0,0 +1,39 @@ +From 45498417c8405ad9ca3d8cd94940d6fb2702ec43 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <mclasen@redhat.com> +Date: Fri, 12 Nov 2010 19:19:48 -0500 +Subject: [PATCH] Fix a crash in gnome-terminal when using a compositor + +In this case, gnome-terminal sets an RGBA visual on its window, +and we need to be careful when creating the icon pixmap, to create +the pixmap with the same depth as the visual, or we risk a BadMatch +from XRenderCreatePicture deep inside cairo. +--- + gdk/x11/gdkwindow-x11.c | 6 ++++-- + 1 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c +index 9f54ddc..88d8510 100644 +--- a/gdk/x11/gdkwindow-x11.c ++++ b/gdk/x11/gdkwindow-x11.c +@@ -278,14 +278,16 @@ gdk_x11_window_create_pixmap_surface (GdkWindow *window, + { + cairo_surface_t *surface; + Pixmap pixmap; ++ GdkVisual *visual; + ++ visual = gdk_window_get_visual (window); + pixmap = XCreatePixmap (GDK_WINDOW_XDISPLAY (window), + GDK_WINDOW_XID (window), + width, height, +- DefaultDepthOfScreen (GDK_SCREEN_XSCREEN (GDK_WINDOW_SCREEN (window)))); ++ gdk_visual_get_depth (visual)); + surface = cairo_xlib_surface_create (GDK_WINDOW_XDISPLAY (window), + pixmap, +- GDK_VISUAL_XVISUAL (gdk_window_get_visual (window)), ++ GDK_VISUAL_XVISUAL (visual), + width, height); + attach_free_pixmap_handler (surface, GDK_WINDOW_DISPLAY (window), pixmap); + +-- +1.7.3.2 + @@ -11,7 +11,7 @@ Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X Name: gtk3 Version: 2.91.4 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPLv2+ Group: System Environment/Libraries URL: http://www.gtk.org @@ -25,6 +25,9 @@ BuildRequires: gnome-common autoconf automake intltool gettext Patch2: 0001-New-tooltip-style.patch +# upstream fix +Patch3: 0001-Fix-a-crash-in-gnome-terminal-when-using-a-composito.patch + BuildRequires: atk-devel >= %{atk_version} BuildRequires: glib2-devel >= %{glib2_version} BuildRequires: cairo-devel >= %{cairo_version} @@ -111,6 +114,7 @@ widget toolkit. %setup -q -n gtk+-%{version} %patch0 -p1 -b .system-python %patch2 -p1 -b .fresh-tooltips +%patch3 -p1 -b .terminal-crash %build @@ -245,6 +249,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache %{_mandir}/man1/gtk-builder-convert-3.0.1.gz %changelog +* Fri Nov 12 2010 Matthias Clasen <mclasen@redhat.com> 2.91.4-2 +- Make gnome-terminal work again + * Thu Nov 11 2010 Matthias Clasen <mclasen@redhat.com> 2.91.4-1 - Update to 2.91.4 |