[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SUSPEND hanging on spurious I/O channel



Remember that Random lossage we saw once about 5 months ago?
Well it struck me last nite, and I had to dig in and finally 
track it down before bringing up a new XLISP. 
     Problem seems that at one place in the code for OPEN, a file-array 
has been created, and channel number allocated, but when something goes
wrong after that, not all paths exit from there remember to de-allocate
the channel.  In particular, the code just after OPEN3: doesn't!  Subject
to all sorts of timing screws then, that SAR cell might be re-used
just as the channel table still had the worthless assignment in it.  
    I've patched this in the current lisp, and edited the sources;
also checked out a few other paths for similar lossage.