5 |
|
* Holodeck display process communication |
6 |
|
*/ |
7 |
|
|
8 |
– |
#include <sys/uio.h> |
9 |
– |
|
8 |
|
#include "rholo.h" |
9 |
|
#include "rhdisp.h" |
10 |
|
#include "rtprocess.h" |
11 |
+ |
#include <sys/uio.h> |
12 |
+ |
#include <string.h> |
13 |
|
|
14 |
|
#ifndef HDSUF |
15 |
|
#define HDSUF ".hdi" |
76 |
|
} |
77 |
|
/* write out hologram grids & octrees */ |
78 |
|
for (i = 0; hdlist[i] != NULL; i++) { |
79 |
< |
bcopy((void *)hdlist[i], buf, sizeof(HDGRID)); |
79 |
> |
memcpy(buf, (void *)hdlist[i], sizeof(HDGRID)); |
80 |
|
len = sizeof(HDGRID); |
81 |
|
n = vdef(GEOMETRY); |
82 |
|
sfn = i<n ? nvalue(GEOMETRY,i) : |
124 |
|
dpout = NULL; |
125 |
|
error(USER, "display process died"); |
126 |
|
} |
127 |
< |
if (errno != EAGAIN & errno != EINTR) |
127 |
> |
if ((errno != EAGAIN) & (errno != EINTR)) |
128 |
|
goto readerr; |
129 |
|
return(2); /* acceptable failure */ |
130 |
|
} |
186 |
|
case DR_VIEWPOINT: /* set target eye position */ |
187 |
|
if (msg.nbytes != sizeof(VIEWPOINT)) |
188 |
|
error(INTERNAL, "bad DR_VIEWPOINT from display process"); |
189 |
< |
copystruct(&myeye, (VIEWPOINT *)buf); |
189 |
> |
myeye = *((VIEWPOINT *)buf); |
190 |
|
break; |
191 |
|
case DR_ATTEN: /* block for priority request */ |
192 |
|
if (msg.nbytes) |
215 |
|
case DR_CLOBBER: /* clobber holodeck */ |
216 |
|
if (msg.nbytes) |
217 |
|
error(INTERNAL, "bad DR_CLOBBER from display process"); |
218 |
< |
if (force <= 0 | ncprocs <= 0) |
218 |
> |
if ((force <= 0) | (ncprocs <= 0)) |
219 |
|
error(WARNING, "request to clobber holodeck denied"); |
220 |
|
else { |
221 |
|
error(WARNING, "clobbering holodeck contents"); |