Don't free foreign colormaps
This commit is contained in:
parent
91ebf02b49
commit
a9bb47f76b
29
foreign-cmap.patch
Normal file
29
foreign-cmap.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
diff -rup gtk+-2.12.8.orig/gdk/x11/gdkcolor-x11.c gtk+-2.12.8.new/gdk/x11/gdkcolor-x11.c
|
||||||
|
--- gtk+-2.12.8.orig/gdk/x11/gdkcolor-x11.c 2008-02-12 12:57:43.000000000 -0500
|
||||||
|
+++ gtk+-2.12.8.new/gdk/x11/gdkcolor-x11.c 2008-04-02 22:02:07.000000000 -0400
|
||||||
|
@@ -46,7 +46,7 @@ struct _GdkColormapPrivateX11
|
||||||
|
GdkColorInfo *info;
|
||||||
|
time_t last_sync_time;
|
||||||
|
|
||||||
|
- guint foreign : 1;
|
||||||
|
+ gboolean foreign;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define GDK_COLORMAP_PRIVATE_DATA(cmap) ((GdkColormapPrivateX11 *) GDK_COLORMAP (cmap)->windowing_data)
|
||||||
|
@@ -107,7 +107,7 @@ gdk_colormap_finalize (GObject *object)
|
||||||
|
|
||||||
|
gdk_colormap_remove (colormap);
|
||||||
|
|
||||||
|
- if (!private->screen->closed)
|
||||||
|
+ if (!private->screen->closed && !private->foreign)
|
||||||
|
XFreeColormap (GDK_SCREEN_XDISPLAY (private->screen), private->xcolormap);
|
||||||
|
|
||||||
|
if (private->hash)
|
||||||
|
@@ -1292,6 +1292,7 @@ gdk_x11_colormap_foreign_new (GdkVisual
|
||||||
|
private->screen = screen;
|
||||||
|
private->xcolormap = xcolormap;
|
||||||
|
private->private_val = FALSE;
|
||||||
|
+ private->foreign = TRUE;
|
||||||
|
|
||||||
|
colormap->size = visual->colormap_size;
|
||||||
|
|
@ -16,7 +16,7 @@
|
|||||||
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
|
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
|
||||||
Name: gtk2
|
Name: gtk2
|
||||||
Version: %{base_version}
|
Version: %{base_version}
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
Source: http://download.gnome.org/sources/gtk+/2.12/gtk+-%{version}.tar.bz2
|
Source: http://download.gnome.org/sources/gtk+/2.12/gtk+-%{version}.tar.bz2
|
||||||
@ -37,6 +37,9 @@ Patch3: system-log-crash.patch
|
|||||||
# backport from svn trunk
|
# backport from svn trunk
|
||||||
Patch4: im-setting.patch
|
Patch4: im-setting.patch
|
||||||
|
|
||||||
|
# fixed upstream
|
||||||
|
Patch5: foreign-cmap.patch
|
||||||
|
|
||||||
BuildRequires: atk-devel >= %{atk_version}
|
BuildRequires: atk-devel >= %{atk_version}
|
||||||
BuildRequires: pango-devel >= %{pango_version}
|
BuildRequires: pango-devel >= %{pango_version}
|
||||||
BuildRequires: glib2-devel >= %{glib2_version}
|
BuildRequires: glib2-devel >= %{glib2_version}
|
||||||
@ -116,6 +119,7 @@ docs for the GTK+ widget toolkit.
|
|||||||
%patch2 -p1 -b .workaround
|
%patch2 -p1 -b .workaround
|
||||||
%patch3 -p1 -b .system-log-crash
|
%patch3 -p1 -b .system-log-crash
|
||||||
%patch4 -p1 -b .im-setting
|
%patch4 -p1 -b .im-setting
|
||||||
|
%patch5 -p1 -b .foreign-cmap
|
||||||
|
|
||||||
for i in config.guess config.sub ; do
|
for i in config.guess config.sub ; do
|
||||||
test -f %{_datadir}/libtool/$i && cp %{_datadir}/libtool/$i .
|
test -f %{_datadir}/libtool/$i && cp %{_datadir}/libtool/$i .
|
||||||
@ -298,6 +302,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{_datadir}/gtk-2.0
|
%{_datadir}/gtk-2.0
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Apr 3 2008 Matthias Clasen <mclasen@redhat.com> - 2.12.9-2
|
||||||
|
- Don't free foreign colormaps
|
||||||
|
|
||||||
* Wed Mar 12 2008 Matthias Clasen <mclasen@redhat.com> - 2.12.9-1
|
* Wed Mar 12 2008 Matthias Clasen <mclasen@redhat.com> - 2.12.9-1
|
||||||
- Update to 2.12.9
|
- Update to 2.12.9
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user