From http://www.jwz.org/xscreensaver/xscreensaver-5.35.tar.gz
[xscreensaver] / hacks / imsmap.c
index d7f0147f42a1b4f0d9f92003155d32701f24ed12..1877243dcf00c2bce88dddb93a0fda7871f73fe1 100644 (file)
@@ -186,6 +186,7 @@ init_map (struct state *st)
 
   if (!mono_p)
     {
+      if (st->ncolors < 1) st->ncolors = 1;
       st->colors = (XColor *) malloc (st->ncolors * sizeof(*st->colors));
 
       make_smooth_colormap (st->xgwa.screen, st->xgwa.visual, st->cmap,
@@ -372,7 +373,7 @@ static Bool
 imsmap_event (Display *dpy, Window window, void *closure, XEvent *event)
 {
   struct state *st = (struct state *) closure;
-  if (event->xany.type == ButtonPress)
+  if (screenhack_event_helper (dpy, window, event))
     {
       init_map (st);
       return True;
@@ -401,7 +402,7 @@ static const char *imsmap_defaults [] = {
   "*iterations:        7",
   "*delay:     5",
   "*delay2:    20000",
-#ifdef USE_IPHONE
+#ifdef HAVE_MOBILE
   "*ignoreRotation: True",
 #endif
   0