web/request.py
brancholdstable
changeset 8176 eff4fe02ec64
parent 8081 e8091b415ad8
child 8177 e4ab883f07d9
equal deleted inserted replaced
8123:a4e667270dd4 8176:eff4fe02ec64
   541             name, value = value, name[value].value
   541             name, value = value, name[value].value
   542         if maxage: # don't check is None, 0 may be specified
   542         if maxage: # don't check is None, 0 may be specified
   543             assert expires is None, 'both max age and expires cant be specified'
   543             assert expires is None, 'both max age and expires cant be specified'
   544             expires = maxage + time.time()
   544             expires = maxage + time.time()
   545         elif expires:
   545         elif expires:
       
   546             # we don't want to handle times before the EPOCH (cause bug on
       
   547             # windows). Also use > and not >= else expires == 0 and Cookie think
       
   548             # that means no expire...
       
   549             assert expires + GMTOFFSET > date(1970, 1, 1)
   546             expires = timegm((expires + GMTOFFSET).timetuple())
   550             expires = timegm((expires + GMTOFFSET).timetuple())
   547         else:
   551         else:
   548             expires = None
   552             expires = None
   549         # make sure cookie is set on the correct path
   553         # make sure cookie is set on the correct path
   550         cookie = Cookie(str(name), str(value), self.base_url_path(),
   554         cookie = Cookie(str(name), str(value), self.base_url_path(),
   555         """remove a cookie by expiring it"""
   559         """remove a cookie by expiring it"""
   556         if bwcompat is not None:
   560         if bwcompat is not None:
   557             warn('[3.13] remove_cookie now take only a name as argument',
   561             warn('[3.13] remove_cookie now take only a name as argument',
   558                  DeprecationWarning, stacklevel=2)
   562                  DeprecationWarning, stacklevel=2)
   559             name = bwcompat
   563             name = bwcompat
   560         self.set_cookie(name, '', maxage=0,
   564         self.set_cookie(name, '', maxage=0, expires=date(2000, 1, 1))
   561                         # substracting GMTOFFSET because set_cookie
       
   562                         # expects a localtime and we don't want to
       
   563                         # handle times before the EPOCH
       
   564                         expires=date(1970, 1, 1) - GMTOFFSET) 
       
   565 
   565 
   566     def set_content_type(self, content_type, filename=None, encoding=None):
   566     def set_content_type(self, content_type, filename=None, encoding=None):
   567         """set output content type for this request. An optional filename
   567         """set output content type for this request. An optional filename
   568         may be given
   568         may be given
   569         """
   569         """