summaryrefslogtreecommitdiff
path: root/lib/uri/ftp.rb
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-22 00:21:57 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-06-22 00:21:57 +0000
commitc56dab2ceb3cfc53595ae65a3ca164e445191a3b (patch)
tree59f74dbb418b6f4867e9392d564f0be33446b268 /lib/uri/ftp.rb
parentf977ebb1c9404db16019d26d3785b365556e51e1 (diff)
downloadruby-c56dab2ceb3cfc53595ae65a3ca164e445191a3b.tar.gz
fix that arg_check didn't work
* lib/uri/ftp.rb (initialize): arg[-1] was fragment, but it must be arg_check. * lib/uri/ftp.rb (initialize): explicitly specify arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/uri/ftp.rb')
-rw-r--r--lib/uri/ftp.rb21
1 files changed, 14 insertions, 7 deletions
diff --git a/lib/uri/ftp.rb b/lib/uri/ftp.rb
index 0c5b13a1b7..557e1fda33 100644
--- a/lib/uri/ftp.rb
+++ b/lib/uri/ftp.rb
@@ -129,17 +129,24 @@ module URI
# Arguments are +scheme+, +userinfo+, +host+, +port+, +registry+, +path+,
# +opaque+, +query+ and +fragment+, in that order.
#
- def initialize(*arg)
- raise InvalidURIError unless arg[5]
- arg[5] = arg[5].sub(/^\//,'').sub(/^%2F/,'/')
- super(*arg)
+ def initialize(scheme,
+ userinfo, host, port, registry,
+ path, opaque,
+ query,
+ fragment,
+ parser = nil,
+ arg_check = false)
+ raise InvalidURIError unless path
+ path = path.sub(/^\//,'')
+ path.sub!(/^%2F/,'/')
+ super(scheme, userinfo, host, port, registry, path, opaque,
+ query, fragment, parser, arg_check)
@typecode = nil
- tmp = @path.index(TYPECODE_PREFIX)
- if tmp
+ if tmp = @path.index(TYPECODE_PREFIX)
typecode = @path[tmp + TYPECODE_PREFIX.size..-1]
@path = @path[0..tmp - 1]
- if arg[-1]
+ if arg_check
self.typecode = typecode
else
self.set_typecode(typecode)