projects
/
xscreensaver
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
http://ftp.x.org/contrib/applications/xscreensaver-2.21.tar.gz
[xscreensaver]
/
hacks
/
flame.c
diff --git
a/hacks/flame.c
b/hacks/flame.c
index d723f055e8cee09572da6171878936590a477f99..bbdbfdec93437ad43a22c508d85d101938615054 100644
(file)
--- 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++)
{
{
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)
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 [] = {
char *progclass = "Flame";
char *defaults [] = {
- "
Flame.background: black", /* to placate SGI */
- "
Flame.foreground:
white",
+ "
*background: black",
+ "
*foreground:
white",
"*colors: 64",
"*iterations: 25",
"*delay: 50000",
"*colors: 64",
"*iterations: 25",
"*delay: 50000",