http://ftp.x.org/contrib/applications/xscreensaver-3.07.tar.gz
[xscreensaver] / hacks / glx / xpm-ximage.c
index 6ac712f0851f7fcdda1a72233b96a39c4e0e8404..ded8bbb5567d19bc7d5c210fd34026533aaae9c4 100644 (file)
 # include "config.h"
 #endif
 
-#ifdef HAVE_XPM                /* whole file */
-
 #include <stdlib.h>
 #include <stdio.h>
 #include <X11/Intrinsic.h>
-#include <X11/Xutil.h>
-#include <X11/xpm.h>
 
 extern char *progname;
 
+#ifdef HAVE_XPM                /* whole file */
+
+#include <X11/Xutil.h>
+#include <X11/xpm.h>
+
 static Bool
 bigendian (void)
 {
@@ -63,6 +64,8 @@ xpm_to_ximage (Display *dpy, Visual *visual, Colormap cmap, char **xpm_data)
   int bpl, wpl;
   XColor colors[255];
 
+  memset (&xpm_image, 0, sizeof(xpm_image));
+  memset (&xpm_info, 0, sizeof(xpm_info));
   result = XpmCreateXpmImageFromData (xpm_data, &xpm_image, &xpm_info);
   if (result != XpmSuccess)
     {
@@ -133,7 +136,7 @@ xpm_to_ximage (Display *dpy, Visual *visual, Colormap cmap, char **xpm_data)
 
 #else  /* !HAVE_XPM */
 
-static XImage *
+XImage *
 xpm_to_ximage (char **xpm_data)
 {
   fprintf(stderr, "%s: not compiled with XPM support.\n", progname);