From a7b1cfbb99631ed077133dc858a82bfeaf48959f Mon Sep 17 00:00:00 2001 From: akr Date: Wed, 28 May 2014 14:06:28 +0000 Subject: * test/ruby/test_io.rb (test_flush_in_finalizer1): Use ObjectSpace.each_object to close files. GC.start is not reliable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ test/ruby/test_io.rb | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 175b315f23..af80895d0b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed May 28 23:04:35 2014 Tanaka Akira + + * test/ruby/test_io.rb (test_flush_in_finalizer1): Use + ObjectSpace.each_object to close files. + GC.start is not reliable. + Wed May 28 19:00:31 2014 Tanaka Akira * lib/net/imap.rb (Net::IMAP#initialize): Close the opened socket when diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb index b104086d43..9d2ecef725 100644 --- a/test/ruby/test_io.rb +++ b/test/ruby/test_io.rb @@ -2358,6 +2358,7 @@ End assert_nothing_raised(TypeError, bug3910) do 500.times { f = File.open(path, "w") + f.instance_variable_set(:@test_flush_in_finalizer1, true) fds << f.fileno f.print "hoge" } @@ -2365,7 +2366,11 @@ End t } ensure - GC.start + ObjectSpace.each_object(File) {|f| + if f.instance_variables.include?(:@test_flush_in_finalizer1) + f.close + end + } t.close! end -- cgit v1.2.3