ports/159510: [PATCH] x11-toolkits/gtk: fix repainting bug
Sean C. Farley
scf at FreeBSD.org
Thu Aug 4 00:20:09 UTC 2011
>Number: 159510
>Category: ports
>Synopsis: [PATCH] x11-toolkits/gtk: fix repainting bug
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Thu Aug 04 00:20:08 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Sean C. Farley
>Release: FreeBSD 8.2-STABLE amd64
>Organization:
>Environment:
System: FreeBSD thor.farley.org 8.2-STABLE FreeBSD 8.2-STABLE #1 r223876M: Fri Jul 8 22:52:17
>Description:
This is a fix for Gnome bug #652872[3].
Commit 254b9a4c540e3dff1dcd17db2ceea6a9fa5df973[2] in gtk-2.24.5 causes
issues for many GTK applications such as Freeciv (I.e., the main map is
black). This is commit d7ac9cd71c43689672a9796e518ef3b970197bf2[3]
which reverts it.
1. https://bugzilla.gnome.org/show_bug.cgi?id=652872
2. http://git.gnome.org/browse/gtk+/commit/?h=gtk-2-24&id=254b9a4c540e3dff1dcd17db2ceea6a9fa5df973
3. http://git.gnome.org/browse/gtk+/commit/?h=gtk-2-24&id=d7ac9cd71c43689672a9796e518ef3b970197bf2
Added file(s):
- files/patch-gdk_gdkwindow.c
Port maintainer (gnome at FreeBSD.org) is cc'd.
Generated with FreeBSD Port Tools 0.99
>How-To-Repeat:
>Fix:
--- gtk-2.24.5_1.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/x11-toolkits/gtk20.orig/Makefile /usr/ports/x11-toolkits/gtk20/Makefile
--- /usr/ports/x11-toolkits/gtk20.orig/Makefile 2011-08-03 19:52:19.000000000 -0400
+++ /usr/ports/x11-toolkits/gtk20/Makefile 2011-08-03 20:04:41.000000000 -0400
@@ -9,7 +9,7 @@
PORTNAME= gtk
PORTVERSION= 2.24.5
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES= x11-toolkits
MASTER_SITES= ${MASTER_SITE_GNOME:S,%SUBDIR%,sources/gtk+/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}/,} \
ftp://ftp.gtk.org/pub/gtk/%SUBDIR%/ \
diff -ruN --exclude=CVS /usr/ports/x11-toolkits/gtk20.orig/files/patch-gdk_gdkwindow.c /usr/ports/x11-toolkits/gtk20/files/patch-gdk_gdkwindow.c
--- /usr/ports/x11-toolkits/gtk20.orig/files/patch-gdk_gdkwindow.c 1969-12-31 19:00:00.000000000 -0500
+++ /usr/ports/x11-toolkits/gtk20/files/patch-gdk_gdkwindow.c 2011-08-03 19:53:32.000000000 -0400
@@ -0,0 +1,40 @@
+--- gdk/gdkwindow.c.orig
++++ gdk/gdkwindow.c
+@@ -8004,15 +8004,11 @@ gdk_window_set_background (GdkWindow *window,
+ }
+
+ if (!GDK_WINDOW_DESTROYED (window) &&
++ gdk_window_has_impl (private) &&
+ !private->input_only)
+ {
+- if (gdk_window_has_impl (private))
+- {
+- impl_iface = GDK_WINDOW_IMPL_GET_IFACE (private->impl);
+- impl_iface->set_background (window, &private->bg_color);
+- }
+- else
+- gdk_window_invalidate_rect_full (window, NULL, TRUE, CLEAR_BG_ALL);
++ impl_iface = GDK_WINDOW_IMPL_GET_IFACE (private->impl);
++ impl_iface->set_background (window, &private->bg_color);
+ }
+ }
+
+@@ -8081,15 +8077,11 @@ gdk_window_set_back_pixmap (GdkWindow *window,
+ private->bg_pixmap = GDK_NO_BG;
+
+ if (!GDK_WINDOW_DESTROYED (window) &&
++ gdk_window_has_impl (private) &&
+ !private->input_only)
+ {
+- if (gdk_window_has_impl (private))
+- {
+- impl_iface = GDK_WINDOW_IMPL_GET_IFACE (private->impl);
+- impl_iface->set_back_pixmap (window, private->bg_pixmap);
+- }
+- else
+- gdk_window_invalidate_rect_full (window, NULL, TRUE, CLEAR_BG_ALL);
++ impl_iface = GDK_WINDOW_IMPL_GET_IFACE (private->impl);
++ impl_iface->set_back_pixmap (window, private->bg_pixmap);
+ }
+ }
+
--- gtk-2.24.5_1.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list