Folks:

I'm now also seeing premature EOF during calls to gets() when reading  
if my programs kick off lots of background processes. The problem is  
fixed if I preread the data, replacing (effectively)

     while line = gets

with

    data = StringIO.new(STDIN.read)
    while line = data.gets

In this particular case, it's really hard to isolate the problem down  
to a publishable test case: I've spent the day on it so far and  
haven't been able to come up with anything short enough to publish.

Is anyone else on OS X seeing any I/O corruption issues?



Dave