summaryrefslogtreecommitdiff
path: root/libnautilus-private/nautilus-gdk-pixbuf-extensions.c
diff options
context:
space:
mode:
authorRamiro Estrugo <ramiro@src.gnome.org>2001-01-19 18:02:51 +0000
committerRamiro Estrugo <ramiro@src.gnome.org>2001-01-19 18:02:51 +0000
commit0be1195b18f93b1ef7c79788e5bc571d2c99c1fe (patch)
tree6904c7585fa78142a2ca739ed5c25bd76eaca0f4 /libnautilus-private/nautilus-gdk-pixbuf-extensions.c
parentf425b33530559f6b0f139df74ae05689e4581e04 (diff)
downloadnautilus-0be1195b18f93b1ef7c79788e5bc571d2c99c1fe.tar.gz
reviewed by: Nobody, because the "fix" is so revolting that none
of the high integrity Nautilus hackers would approve it. * libnautilus-extensions/Makefile.am: * libnautilus-extensions/bug-5712-pr3-workaround--gdk-pixbuf-drawable.c: * libnautilus-extensions/bug-5712-pr3-workaround--gdk-pixbuf-private.h: * libnautilus-extensions/bug-5712-pr3-workaround--gdkimage.c: * libnautilus-extensions/nautilus-gdk-pixbuf-extensions.c: (nautilus_gdk_pixbuf_get_from_window_safe): Workaround for bug 5712. This is a temporary evil until GTK+ 1.2.9 is released.
Diffstat (limited to 'libnautilus-private/nautilus-gdk-pixbuf-extensions.c')
-rw-r--r--libnautilus-private/nautilus-gdk-pixbuf-extensions.c28
1 files changed, 19 insertions, 9 deletions
diff --git a/libnautilus-private/nautilus-gdk-pixbuf-extensions.c b/libnautilus-private/nautilus-gdk-pixbuf-extensions.c
index e87e3d4fa..e944738da 100644
--- a/libnautilus-private/nautilus-gdk-pixbuf-extensions.c
+++ b/libnautilus-private/nautilus-gdk-pixbuf-extensions.c
@@ -1333,6 +1333,16 @@ nautilus_gdk_pixbuf_get_global_buffer (int minimum_width,
return global_buffer;
}
+/* FIXME bugzilla.eazel.com 5813:
+ * As soon as gtk 1.2.9 is released, this hack needs to be exorcised.
+ */
+GdkPixbuf *
+NAUTILUS_BUG_5712_PR3_WORKAROUND__gdk_pixbuf_get_from_drawable (GdkPixbuf *dest,
+ GdkDrawable *src, GdkColormap *cmap,
+ int src_x, int src_y,
+ int dest_x, int dest_y,
+ int width, int height);
+
/* Same as gdk_pixbuf_get_from_drawable() except it deals with
* race conditions and other evil things that can happen */
GdkPixbuf *
@@ -1387,15 +1397,15 @@ nautilus_gdk_pixbuf_get_from_window_safe (GdkWindow *window,
window_private = (GdkWindowPrivate*) window;
window_private->window_type = GDK_WINDOW_PIXMAP;
- pixbuf = gdk_pixbuf_get_from_drawable (NULL,
- window,
- colormap,
- x,
- y,
- 0,
- 0,
- width,
- height);
+ pixbuf = NAUTILUS_BUG_5712_PR3_WORKAROUND__gdk_pixbuf_get_from_drawable (NULL,
+ window,
+ colormap,
+ x,
+ y,
+ 0,
+ 0,
+ width,
+ height);
/* Restore the window's guts */
window_private->window_type = save_window_type;