mirror of
https://github.com/samsonjs/http-cookie.git
synced 2026-04-27 14:57:46 +00:00
Cookie.new: Let max_age take precedence over expires.
This commit is contained in:
parent
fcb447164d
commit
073d83b40c
1 changed files with 6 additions and 4 deletions
|
|
@ -170,7 +170,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
|
max_age = 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/, '')
|
||||||
|
|
@ -181,6 +181,9 @@ class HTTP::Cookie
|
||||||
for_domain = !!val
|
for_domain = !!val
|
||||||
when 'origin'
|
when 'origin'
|
||||||
origin = val
|
origin = val
|
||||||
|
when 'max_age'
|
||||||
|
# Let max_age take precedence over expires
|
||||||
|
max_age = val if val
|
||||||
else
|
else
|
||||||
setter = :"#{skey}="
|
setter = :"#{skey}="
|
||||||
__send__(setter, val) if respond_to?(setter)
|
__send__(setter, val) if respond_to?(setter)
|
||||||
|
|
@ -190,9 +193,8 @@ class HTTP::Cookie
|
||||||
raise ArgumentError, "at least name and value must be specified"
|
raise ArgumentError, "at least name and value must be specified"
|
||||||
end
|
end
|
||||||
@for_domain = for_domain
|
@for_domain = for_domain
|
||||||
if origin
|
self.origin = origin if origin
|
||||||
self.origin = origin
|
self.max_age = max_age if max_age
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
autoload :Scanner, 'http/cookie/scanner'
|
autoload :Scanner, 'http/cookie/scanner'
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue