From 91a3db0afc159e855312c4cd5c79fe925c65fd10 Mon Sep 17 00:00:00 2001 From: akira Date: Thu, 7 Feb 2002 04:51:11 +0000 Subject: uri-0.9.5 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/uri/common.rb | 13 +++++++++++++ lib/uri/generic.rb | 6 +++--- 2 files changed, 16 insertions(+), 3 deletions(-) (limited to 'lib/uri') diff --git a/lib/uri/common.rb b/lib/uri/common.rb index ed2f6a7a5b..6f2fa81ad2 100644 --- a/lib/uri/common.rb +++ b/lib/uri/common.rb @@ -378,6 +378,19 @@ module URI =begin +--- URI::join(str[, str, ...]) + +=end + def self.join(*str) + u = self.parse(str[0]) + str[1 .. -1].each do |x| + u = u.merge(x) + end + u + end + +=begin + --- URI::extract(str[, schemes]) =end diff --git a/lib/uri/generic.rb b/lib/uri/generic.rb index 4d3ab67b7e..1510e53eeb 100644 --- a/lib/uri/generic.rb +++ b/lib/uri/generic.rb @@ -494,7 +494,7 @@ Object else if v && v != '' && ABS_PATH !~ v && REL_PATH !~ v raise InvalidComponentError, - "bad component(expected relative path component): #{@path}" + "bad component(expected relative path component): #{v}" end end @@ -688,7 +688,7 @@ Object end # RFC2396, Section 5.2, 6), a) - base_path.pop if !base_path.last.empty? + base_path.pop unless base_path.size == 1 # RFC2396, Section 5.2, 6), c) # RFC2396, Section 5.2, 6), d) @@ -719,7 +719,7 @@ Object # valid absolute path # end base_path << x - base_path += tmp + tmp.each {|t| base_path << t} add_trailer_slash = false break end -- cgit v1.2.3