| 1076 |
|
writebuf(rtp->pd.w, inpbuf, iblen); |
| 1077 |
|
} else { /* else bypass dummy ray */ |
| 1078 |
|
queue_raytree(rtp); /* empty tree */ |
| 1079 |
< |
if ((yres <= 0) | (waitflush > 0)) |
| 1079 |
> |
if ((yres <= 0) | (waitflush > 1)) |
| 1080 |
|
waitflush = 1; /* flush after this */ |
| 1081 |
|
} |
| 1082 |
– |
if (raysleft && !--raysleft) |
| 1083 |
– |
break; |
| 1082 |
|
process_queue(); /* catch up with results */ |
| 1083 |
+ |
if (raysleft && !--raysleft) |
| 1084 |
+ |
break; /* preemptive EOI */ |
| 1085 |
|
} |
| 1086 |
|
while (wait_rproc() != NULL) /* process outstanding rays */ |
| 1087 |
|
process_queue(); |