ref: 86f3505dda27ff5de1d9a262926bb7f1fe4b331b
parent: 6968d0a882c1d345e52855614568f51e4954a26b
author: qwx <qwx@sciops.net>
date: Sun Jan 15 15:23:42 EST 2023
games/dmid: properly skip delay field from stream
--- a/sys/src/games/dmid.c
+++ b/sys/src/games/dmid.c
@@ -397,7 +397,7 @@
dprint(" [%zd] ", x - tr);
e = get8(x);
- if((e & 0x80) == 0){
+ if(!stream && (e & 0x80) == 0){
x->p--;
e = x->ev;
if((e & 0x80) == 0)
@@ -580,13 +580,12 @@
if(stream){
if(proccreate(tproc, nil, mainstacksize) < 0)
sysfatal("proccreate: %r");
- xs.p = u;
- xs.e = u + sizeof u;
for(;;){
if((n = Bread(ib, u, sizeof u)) != sizeof u)
break;
- u[0] = 0;
xs.p = u;
+ xs.e = u + n;
+ getvar(&xs);
ev(&xs);
}
threadexitsall(n < 0 ? "read: %r" : nil);
--
⑨