631aef280d
in ape close(), do the real filedescriptor _CLOSE() *after* we cleared the _fdinfo[] slot because once closed, we dont own the slot anymore and another process doing open() can trash the slot. make sure open() retuns fd < OPEN_MAX. double check in _startbuf() holding mux->lock if the fd is already buffered preveting running double copyprocs on a fd. dont zero the mux->rwant/ewant bitmaps at the end of select() as we do not hold the mix->lock. in _closebuf() kill copyproc while holding the mux->lock to make sure the copyproc isnt holding it at the time it is killed. run kill() multiple times to make sure the proc is gone. |
||
---|---|---|
.. | ||
9 | ||
ap | ||
bsd | ||
bz2 | ||
draw | ||
fmt | ||
l | ||
net | ||
openssl | ||
regexp | ||
utf | ||
v | ||
z | ||
mkfile |