From 922dc8265f47af47327cf01bb5365f2ea8454d16 Mon Sep 17 00:00:00 2001 From: akr Date: Tue, 25 Nov 2003 09:56:49 +0000 Subject: * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test refined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/open-uri.rb | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'lib/open-uri.rb') diff --git a/lib/open-uri.rb b/lib/open-uri.rb index 168bc0a76d..917f385cec 100644 --- a/lib/open-uri.rb +++ b/lib/open-uri.rb @@ -458,9 +458,19 @@ module URI # HTTP_PROXY conflicts with *_proxy for proxy settings and # HTTP_* for header informatin in CGI. # So it should be careful to use it. - case_sentsitive = /djgpp|bccwin32|mingw|mswin32|mswince|emx/ !~ RUBY_PLATFORM - if case_sentsitive - # http_proxy is safe to use. + pairs = ENV.reject {|k, v| /\Ahttp_proxy\z/i !~ k } + case pairs.length + when 0 # no proxy setting anyway. + proxy_uri = nil + when 1 + k, v = pairs[0] + if k == 'http_proxy' && ENV[k.upcase] == nil + # http_proxy is safe to use becase ENV is case sensitive. + proxy_uri = ENV[name] + else + proxy_uri = nil + end + else # http_proxy is safe to use becase ENV is case sensitive. proxy_uri = ENV[name] end if !proxy_uri -- cgit v1.2.3