Mercurial > audlegacy
diff src/audacious/widgets/playlist_list.c @ 2418:1b109bc34ede trunk
[svn] - fix: W:playlist_list.c(162) [get_transparency_pixmap]: possible type-punned pointer dereference
author | nenolod |
---|---|
date | Fri, 26 Jan 2007 18:10:18 -0800 |
parents | ab2b1b6f6179 |
children | af8b86badfdb |
line wrap: on
line diff
--- a/src/audacious/widgets/playlist_list.c Fri Jan 26 14:55:25 2007 -0800 +++ b/src/audacious/widgets/playlist_list.c Fri Jan 26 18:10:18 2007 -0800 @@ -142,11 +142,12 @@ GdkDrawable *get_transparency_pixmap(void) { GdkDrawable *root; - XID *pixmaps; + guchar *pm = NULL; GdkAtom prop_type; gint prop_size; GdkPixmap *pixmap; gboolean ret; + XID *pixmaps; root = gdk_get_default_root_window(); @@ -159,10 +160,13 @@ 0, 0, INT_MAX - 3, FALSE, &prop_type, NULL, &prop_size, - (guchar **) &pixmaps); + &pm); gdk_error_trap_pop(); + if (pm != NULL) + pixmaps = (XID *) pm; + if ((ret == TRUE) && (prop_type == GDK_TARGET_PIXMAP) && (prop_size >= sizeof(XID)) && (pixmaps != NULL)) { pixmap = gdk_pixmap_foreign_new_for_display(gdk_drawable_get_display(root),