Keep the mask around until after we draw ... since the GC changes aren't

1999-11-29  Owen Taylor  <otaylor@redhat.com>

	* src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
	Keep the mask around until after we draw ... since
	the GC changes aren't flushed to the X server until we
	draw, destroying it before that may result in BadPixmap
	errors.
This commit is contained in:
Owen Taylor 1999-11-30 17:56:02 +00:00 committed by Owen Taylor
parent 1284c3fc42
commit bfa345c338
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,11 @@
1999-11-29 Owen Taylor <otaylor@redhat.com>
* src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
Keep the mask around until after we draw ... since
the GC changes aren't flushed to the X server until we
draw, destroying it before that may result in BadPixmap
errors.
1999-11-30 Havoc Pennington <hp@pobox.com>
* configure.in: Add AM_CONDITIONAL for inside gnome-libs

View File

@ -276,7 +276,7 @@ gdk_pixbuf_render_to_drawable_alpha (GdkPixbuf *pixbuf, GdkDrawable *drawable,
int x_dither, int y_dither)
{
ArtPixBuf *apb;
GdkBitmap *bitmap;
GdkBitmap *bitmap = NULL;
GdkGC *gc;
g_return_if_fail (pixbuf != NULL);
@ -306,7 +306,6 @@ gdk_pixbuf_render_to_drawable_alpha (GdkPixbuf *pixbuf, GdkDrawable *drawable,
gdk_gc_set_clip_mask (gc, bitmap);
gdk_gc_set_clip_origin (gc, dest_x, dest_y);
gdk_bitmap_unref (bitmap);
}
gdk_pixbuf_render_to_drawable (pixbuf, drawable, gc,
@ -316,5 +315,8 @@ gdk_pixbuf_render_to_drawable_alpha (GdkPixbuf *pixbuf, GdkDrawable *drawable,
dither,
x_dither, y_dither);
if (bitmap)
gdk_bitmap_unref (bitmap);
gdk_gc_unref (gc);
}