summaryrefslogtreecommitdiff
path: root/gdk/x11/gdkpixmap-x11.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2001-11-05 17:48:58 +0000
committerOwen Taylor <otaylor@src.gnome.org>2001-11-05 17:48:58 +0000
commit42634ee7355c628f88908a9c4a73f3b4ee0335c5 (patch)
treec2fb9149a02ca46b97dd72d1070b707c2fe945e9 /gdk/x11/gdkpixmap-x11.c
parent8a31888a046a56fb05f7b409537122d72e671ff7 (diff)
downloadgtk+-42634ee7355c628f88908a9c4a73f3b4ee0335c5.tar.gz
Redo Xft support to go directly to Picture objects instead of using
Mon Nov 5 12:46:44 2001 Owen Taylor <otaylor@redhat.com> * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h gdk/x11/gdkwindow-x11.c: Redo Xft support to go directly to Picture objects instead of using XftDraw. This fixes the problem where we weren't able to properly destroy XftDraw objects before destroying the accompanying windows, and probably improves efficiency a bit too. (#50214)
Diffstat (limited to 'gdk/x11/gdkpixmap-x11.c')
-rw-r--r--gdk/x11/gdkpixmap-x11.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gdk/x11/gdkpixmap-x11.c b/gdk/x11/gdkpixmap-x11.c
index 15804ce8a4..ae50cc3375 100644
--- a/gdk/x11/gdkpixmap-x11.c
+++ b/gdk/x11/gdkpixmap-x11.c
@@ -122,6 +122,15 @@ gdk_pixmap_impl_x11_finalize (GObject *object)
GdkPixmapImplX11 *impl = GDK_PIXMAP_IMPL_X11 (object);
GdkPixmap *wrapper = GDK_PIXMAP (GDK_DRAWABLE_IMPL_X11 (impl)->wrapper);
+#ifdef HAVE_XFT
+ {
+ GdkDrawableImplX11 *draw_impl = GDK_DRAWABLE_IMPL_X11 (impl);
+
+ if (draw_impl->picture)
+ XRenderFreePicture (draw_impl->xdisplay, draw_impl->picture);
+ }
+#endif /* HAVE_XFT */
+
if (!impl->is_foreign)
XFreePixmap (GDK_PIXMAP_XDISPLAY (wrapper), GDK_PIXMAP_XID (wrapper));