On Apr 17, 2006, at 6:55 PM, Stephan Maka wrote:

> Is this assumed behaviour or a bug? I guess there's a close(2) or
> waitpid(2) missing in the IO code...

See ``ri IO#close''. Use the block form if you do not want to call  
close manually.

> os = IO.popen('uname -sr').readlines.to_s.strip

Calling IO#readlines.to_s is a rather indirect way of calling IO#read.

Try:

     os = `uname -sr`.strip

or

     os = %x{uname -sr}.strip

-- Daniel