This commit is contained in:
rsc 2006-01-06 18:03:09 +00:00
parent e29d0c84fe
commit ed0601ee18

View file

@ -323,6 +323,7 @@ xrdwr(int argc, char **argv)
void void
rdcon(void *v) rdcon(void *v)
{ {
int n;
char buf[4096]; char buf[4096];
CFid *fid; CFid *fid;
@ -331,6 +332,8 @@ rdcon(void *v)
n = read(0, buf, sizeof buf); n = read(0, buf, sizeof buf);
if(n <= 0) if(n <= 0)
threadexitsall(0); threadexitsall(0);
if(buf[0] == 'R'-'A'+1)
threadexitsall(0);
if(fswrite(fid, buf, n) != n) if(fswrite(fid, buf, n) != n)
fprint(2, "write: %r\n"); fprint(2, "write: %r\n");
} }
@ -357,9 +360,9 @@ xcon(int argc, char **argv)
usage(); usage();
fid = xopen(argv[0], ORDWR); fid = xopen(argv[0], ORDWR);
proccreate(rdcon, fid, STACK); proccreate(rdcon, fid, 32768);
for(;;){ for(;;){
n = fsread(fid, buf, n); n = fsread(fid, buf, sizeof buf);
if(n <= 0) if(n <= 0)
threadexitsall(0); threadexitsall(0);
if(nocr){ if(nocr){