| 22 |
|
quit(code) /* quit program */ |
| 23 |
|
int code; |
| 24 |
|
{ |
| 25 |
– |
#ifdef MSTATS |
| 26 |
– |
if (code == 2 && errno == ENOMEM) |
| 27 |
– |
printmemstats(stderr); |
| 28 |
– |
#endif |
| 25 |
|
if (ray_pnprocs > 0) /* close children if any */ |
| 26 |
|
ray_pclose(0); |
| 27 |
|
else if (!ray_pnprocs) /* in parent */ |
| 189 |
|
break; |
| 190 |
|
case 'm': /* move camera (or memstats) */ |
| 191 |
|
if (badcom("move")) |
| 196 |
– |
#ifdef MSTATS |
| 197 |
– |
{ |
| 198 |
– |
if (badcom("memory")) |
| 199 |
– |
goto commerr; |
| 200 |
– |
printmemstats(stderr); |
| 201 |
– |
break; |
| 202 |
– |
} |
| 203 |
– |
#else |
| 192 |
|
goto commerr; |
| 205 |
– |
#endif |
| 193 |
|
getmove(args); |
| 194 |
|
break; |
| 195 |
|
case 'r': /* rotate/repaint */ |
| 283 |
|
/* sample the image */ |
| 284 |
|
for (y = 0; /* y < ysiz */ ; y++) { |
| 285 |
|
for (x = 0; x < xsiz-1; x++) { |
| 286 |
< |
if (dev->inpready || errno == ENOMEM) |
| 286 |
> |
if (dev->inpready) |
| 287 |
|
goto escape; |
| 288 |
|
/* |
| 289 |
|
* Test super-pixel to the right. |
| 297 |
|
if (y >= ysiz-1) |
| 298 |
|
break; |
| 299 |
|
for (x = 0; x < xsiz; x++) { |
| 300 |
< |
if (dev->inpready || errno == ENOMEM) |
| 300 |
> |
if (dev->inpready) |
| 301 |
|
goto escape; |
| 302 |
|
/* |
| 303 |
|
* Find super-pixel at this position in next row. |