X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=hacks%2Fflame.c;h=bbdbfdec93437ad43a22c508d85d101938615054;hb=c6b273ef7292ba10943694df1656b05203d7b62f;hp=d723f055e8cee09572da6171878936590a477f99;hpb=f3e0240915ed9f9b3a61781f5c7002d587563fe0;p=xscreensaver diff --git a/hacks/flame.c b/hacks/flame.c index d723f055..bbdbfdec 100644 --- a/hacks/flame.c +++ b/hacks/flame.c @@ -175,6 +175,14 @@ recurse (double x, double y, int l, Display *dpy, Window win) { for (i = 0; i < snum; i++) { + + /* Scale back when values get very large. Spot sez: + "I think this happens on HPUX. I think it's non-IEEE + to generate an exception instead of a silent NaN." + */ + if ((abs(x) > 1.0E5) || (abs(y) > 1.0E5)) + x = x / y; + nx = f[0][0][i] * x + f[0][1][i] * y + f[0][2][i]; ny = f[1][0][i] * x + f[1][1][i] * y + f[1][2][i]; if (i < anum) @@ -373,8 +381,8 @@ int matherr(x) char *progclass = "Flame"; char *defaults [] = { - "Flame.background: black", /* to placate SGI */ - "Flame.foreground: white", + "*background: black", + "*foreground: white", "*colors: 64", "*iterations: 25", "*delay: 50000",