diff options
Diffstat (limited to 'lib/rubygems/uri_parser.rb')
-rw-r--r-- | lib/rubygems/uri_parser.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/rubygems/uri_parser.rb b/lib/rubygems/uri_parser.rb index f350edec8c..f51d77a4af 100644 --- a/lib/rubygems/uri_parser.rb +++ b/lib/rubygems/uri_parser.rb @@ -5,10 +5,18 @@ # class Gem::UriParser + def self.parse_uri(source_uri) + return source_uri unless source_uri.is_a?(String) + + new.parse(source_uri) + end + ## # Parses the #uri, raising if it's invalid def parse!(uri) + require "uri" + raise URI::InvalidURIError unless uri # Always escape URI's to deal with potential spaces and such |