From 82b088aa0c5a79fbb6b4ac5fd4cba31594ea6472 Mon Sep 17 00:00:00 2001 From: akr Date: Thu, 7 Feb 2008 07:40:25 +0000 Subject: * io.c (io_reopen): don't change access mode for stdin, stdout and stderr. [ruby-core:15360] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- bootstraptest/test_io.rb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'bootstraptest/test_io.rb') diff --git a/bootstraptest/test_io.rb b/bootstraptest/test_io.rb index 55b7ce01cb..a5d54afc5b 100644 --- a/bootstraptest/test_io.rb +++ b/bootstraptest/test_io.rb @@ -36,3 +36,19 @@ assert_finish 1, %q{ } r.gets("abab") } + +assert_equal 'ok', %q{ + require 'tmpdir' + begin + tmpname = "#{Dir.tmpdir}/ruby-btest-#{$$}-#{rand(0x100000000).to_s(36)}" + rw = File.open(tmpname, File::RDWR|File::CREAT|File::EXCL) + rescue Errno::EEXIST + retry + end + save = STDIN.dup + STDIN.reopen(rw) + STDIN.reopen(save) + rw.close + File.unlink(tmpname) + :ok +} -- cgit v1.2.3