From: Tomoyuki Chikanaga Date: 2012-03-11T16:36:39+09:00 Subject: [ruby-dev:45329] [ruby-trunk - Bug #5708][Closed] Tempfile.new(pre) with block in test_autoclose Issue #5708 has been updated by Tomoyuki Chikanaga. Status changed from Open to Closed r34129 で修正済みのようですので閉じます。 ---------------------------------------- Bug #5708: Tempfile.new(pre) with block in test_autoclose https://bugs.ruby-lang.org/issues/5708 Author: Akira Tanaka Status: Closed Priority: Normal Assignee: Category: Target version: ruby -v: ruby 2.0.0dev (2011-12-03 trunk 33934) [x86_64-linux] 気がついたのですが、test/ruby/test_io.rb の test_autoclose で、 Tempfile.new をブロック付きで使っています。 Tempfile.new はブロックを呼び出さないので、バグではないかと思われます。 test/ruby/test_io.rb: def test_autoclose feature2250 = '[ruby-core:26222]' pre = 'ft2250' Tempfile.new(pre) do |t| f = IO.for_fd(t.fileno) assert_equal(true, f.autoclose?) f.autoclose = false assert_equal(false, f.autoclose?) f.close assert_nothing_raised(Errno::EBADF) {t.close} t.open f = IO.for_fd(t.fileno, autoclose: false) assert_equal(false, f.autoclose?) f.autoclose = true assert_equal(true, f.autoclose?) f.close assert_raise(Errno::EBADF) {t.close} end Tempfile.new(pre) do |t| try_fdopen(t.fileno) assert_raise(Errno::EBADF) {t.close} end Tempfile.new(pre) do |t| try_fdopen(f.fileno, false) assert_nothing_raised(Errno::EBADF) {t.close} end end -- http://bugs.ruby-lang.org/