aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rubygems/user_interaction.rb
diff options
context:
space:
mode:
authorryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-02-01 03:11:34 +0000
committerryan <ryan@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-02-01 03:11:34 +0000
commitec84bfc9e3d11a3b1dbebcaf4d1ddf1357307513 (patch)
treecc3b9df7f06f86c52f4d09c03f5c9a3876c87b67 /lib/rubygems/user_interaction.rb
parentf4234c9b8f4707c5979d9a3beddc19ceeb417bd8 (diff)
downloadruby-ec84bfc9e3d11a3b1dbebcaf4d1ddf1357307513.tar.gz
Import rubygems 1.5.0 (released version @ 1fb59d0)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/user_interaction.rb')
-rw-r--r--lib/rubygems/user_interaction.rb18
1 files changed, 15 insertions, 3 deletions
diff --git a/lib/rubygems/user_interaction.rb b/lib/rubygems/user_interaction.rb
index 9822a23c35..ff5800c116 100644
--- a/lib/rubygems/user_interaction.rb
+++ b/lib/rubygems/user_interaction.rb
@@ -530,9 +530,21 @@ end
##
# SilentUI is a UI choice that is absolutely silent.
-class Gem::SilentUI
- def method_missing(sym, *args, &block)
- self
+class Gem::SilentUI < Gem::StreamUI
+
+ def initialize
+
+ reader, writer = nil, nil
+
+ if Gem.win_platform?
+ reader = File.open('nul', 'r')
+ writer = File.open('nul', 'w')
+ else
+ reader = File.open('/dev/null', 'r')
+ writer = File.open('/dev/null', 'w')
+ end
+
+ super reader, writer, writer
end
end