libmux: more robust code
This commit is contained in:
parent
80f2165d27
commit
454ae2ad28
@ -34,8 +34,11 @@ _muxrecvproc(void *v)
|
|||||||
qunlock(&mux->inlk);
|
qunlock(&mux->inlk);
|
||||||
qlock(&mux->lk);
|
qlock(&mux->lk);
|
||||||
_muxqhangup(q);
|
_muxqhangup(q);
|
||||||
while(_muxnbqrecv(q, &p))
|
p = nil;
|
||||||
|
while(_muxnbqrecv(q, &p) && p != nil){
|
||||||
free(p);
|
free(p);
|
||||||
|
p = nil;
|
||||||
|
}
|
||||||
free(q);
|
free(q);
|
||||||
mux->readq = nil;
|
mux->readq = nil;
|
||||||
rwakeup(&mux->rpcfork);
|
rwakeup(&mux->rpcfork);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user