HTTP::Cookie.new: Delay setting of origin.

This commit is contained in:
Akinori MUSHA 2012-10-22 02:20:43 +09:00
parent ae4a9d8d40
commit d2f31d90b5

View file

@ -93,6 +93,7 @@ class HTTP::Cookie
raise ArgumentError, "wrong number of arguments (#{args.size} for 1-3)" raise ArgumentError, "wrong number of arguments (#{args.size} for 1-3)"
end end
for_domain = false for_domain = false
origin = nil
attr_hash.each_pair { |key, val| attr_hash.each_pair { |key, val|
skey = key.to_s.downcase skey = key.to_s.downcase
if skey.sub!(/\?\z/, '') if skey.sub!(/\?\z/, '')
@ -105,12 +106,17 @@ class HTTP::Cookie
@name = val @name = val
when 'value' when 'value'
@value = val @value = val
when 'origin'
origin = val
else else
setter = :"#{skey}=" setter = :"#{skey}="
send(setter, val) if respond_to?(setter) send(setter, val) if respond_to?(setter)
end end
} }
@for_domain = for_domain @for_domain = for_domain
if origin
self.origin = origin
end
end end
# If this flag is true, this cookie will be sent to any host in the # If this flag is true, this cookie will be sent to any host in the