From http://www.jwz.org/xscreensaver/xscreensaver-5.29.tar.gz
[xscreensaver] / hacks / rd-bomb.c
index 3e9acbc50e3a5e95d0d892537fd70adab94af867..dfcc2897cab5cacf51cb1c4c0d2c1cec183b4e31 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1992-2013 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 1992-2014 Jamie Zawinski <jwz@jwz.org>
  *
  *  reaction/diffusion textures
  *  Copyright (c) 1997 Scott Draves spot@transmeta.com
@@ -100,6 +100,9 @@ pixack_init(struct state *st, int *size_h, int *size_v)
   if (st->width  <= 0) st->width  = 48 + BELLRAND(256);
   if (st->height <= 0) st->height = 48 + BELLRAND(256);
 
+  if (st->width  > st->xgwa.width)  st->width  = st->xgwa.width;
+  if (st->height > st->xgwa.height) st->height = st->xgwa.height;
+
   /* jwz: when (and only when) XSHM is in use on an SGI 8-bit visual,
      we get shear unless st->width is a multiple of 4.  I don't understand
      why.  This is undoubtedly the wrong fix... */