diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | test/ruby/test_io.rb | 7 |
2 files changed, 12 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Wed May 28 23:04:35 2014 Tanaka Akira <[email protected]> + + * 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 <[email protected]> * 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 |