diff --git a/ChangeLog b/ChangeLog index f76bd53a8..afab65ce1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-08-29 Rob Adams + + * src/ui.c (meta_gdk_pixbuf_get_from_pixmap): harden against null + return from gdk_pixmap_foreign_new. Fix for #116923. + 2003-08-26 Guntupalli Karunakar * configure.in: Added "hi" (Hindi) to ALL_LINGUAS. diff --git a/src/ui.c b/src/ui.c index 1f53c3b14..e4c5bcbc0 100644 --- a/src/ui.c +++ b/src/ui.c @@ -523,18 +523,21 @@ meta_gdk_pixbuf_get_from_pixmap (GdkPixbuf *dest, else drawable = gdk_pixmap_foreign_new (xpixmap); - cmap = get_cmap (drawable); + if (drawable) + { + cmap = get_cmap (drawable); - retval = gdk_pixbuf_get_from_drawable (dest, - drawable, - cmap, - src_x, src_y, - dest_x, dest_y, - width, height); - + retval = gdk_pixbuf_get_from_drawable (dest, + drawable, + cmap, + src_x, src_y, + dest_x, dest_y, + width, height); + } if (cmap) g_object_unref (G_OBJECT (cmap)); - g_object_unref (G_OBJECT (drawable)); + if (drawable) + g_object_unref (G_OBJECT (drawable)); return retval; }