From ebed2ef3354c239fc2fdf11438ca6a7f2b234213 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 25 Jul 2014 06:53:31 +0000 Subject: test_gem_silent_ui.rb: fix leaked FDs * lib/rubygems/user_interaction.rb (Gem::StreamUI#close): clean up IOs. * test/rubygems/test_gem_silent_ui.rb (TestGemSilentUI#teardown): fix leaked FDs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rubygems/user_interaction.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'lib') diff --git a/lib/rubygems/user_interaction.rb b/lib/rubygems/user_interaction.rb index f5e460f994..f7788cedf2 100644 --- a/lib/rubygems/user_interaction.rb +++ b/lib/rubygems/user_interaction.rb @@ -378,9 +378,13 @@ class Gem::StreamUI # handlers that might have been defined. def terminate_interaction(status = 0) + close raise Gem::SystemExitException, status end + def close + end + ## # Return a progress reporter object chosen from the current verbosity. @@ -683,6 +687,12 @@ class Gem::SilentUI < Gem::StreamUI super reader, writer, writer, false end + def close + super + @ins.close + @outs.close + end + def download_reporter(*args) # :nodoc: SilentDownloadReporter.new(@outs, *args) end -- cgit v1.2.3