From: ts Date: 2002-11-16T03:09:43+09:00 Subject: Re: Problem writing to file after closing $stdout & $stderr >>>>> "E" == Eric Schwartz writes: E> 7 $stdout.close E> 8 $stdout = nil It want to flush $stdout, don't make an assignement after the close pigeon% cat b.rb #!/usr/bin/ruby puts "before fork" fork do puts "in child" logfile = File.open('/tmp/logfile','w') logfile.sync=true logfile.puts "before cleosing file descriptors" $stdout.close logfile.puts "closed $stdout" $stderr.close logfile.puts "closed $stderr" $stdin.close logfile.puts "closed $stdin" end puts "after fork, in parent" pigeon% pigeon% b.rb before fork after fork, in parent in child pigeon% pigeon% cat /tmp/logfile before cleosing file descriptors closed $stdout closed $stderr closed $stdin pigeon% Guy Decoux