diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib/rubygems/commands/update_command.rb | 9 |
2 files changed, 10 insertions, 5 deletions
@@ -1,3 +1,9 @@ +Thu Dec 27 22:31:37 2007 NAKAMURA Usaku <usa@ruby-lang.org> + + * lib/rubygems/commands/update_command.rb (do_rubygems_update): use + portable and safely ENV operation. reported in + <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>. + Thu Dec 27 21:47:04 2007 NAKAMURA Usaku <usa@ruby-lang.org> * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in diff --git a/lib/rubygems/commands/update_command.rb b/lib/rubygems/commands/update_command.rb index 7a11ec955..88d48d705 100644 --- a/lib/rubygems/commands/update_command.rb +++ b/lib/rubygems/commands/update_command.rb @@ -122,11 +122,10 @@ class Gem::Commands::UpdateCommand < Gem::Command setup_cmd = "#{Gem.ruby} setup.rb #{args.join ' '}" # Make sure old rubygems isn't loaded - if Gem.win_platform? then - system "set RUBYOPT= & #{setup_cmd}" - else - system "RUBYOPT=\"\" #{setup_cmd}" - end + old = ENV["RUBYOPT"] + ENV.delete("RUBYOPT") + system setup_cmd + ENV["RUBYOPT"] = old if old end end |