Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #19585 -- Fixed loading cookie value as a dict

This regression was introduced by the 'unicode_literals' patch.
  • Loading branch information...
commit f08e739bc2ba5d3530a806378087227728369464 1 parent 4e2e8f3
@claudep claudep authored
View
5 django/http/cookie.py
@@ -1,6 +1,7 @@
from __future__ import absolute_import, unicode_literals
from django.utils.encoding import force_str
+from django.utils import six
from django.utils.six.moves import http_cookies
@@ -48,7 +49,9 @@ def value_encode(self, val):
if not _cookie_allows_colon_in_names:
def load(self, rawdata):
self.bad_cookies = set()
- super(SimpleCookie, self).load(force_str(rawdata))
+ if not six.PY3 and isinstance(rawdata, six.text_type):
+ rawdata = force_str(rawdata)
+ super(SimpleCookie, self).load(rawdata)
for key in self.bad_cookies:
del self[key]
View
4 tests/regressiontests/httpwrappers/tests.py
@@ -588,3 +588,7 @@ def test_httponly_after_load(self):
c['name']['httponly'] = True
self.assertTrue(c['name']['httponly'])
+ def test_load_dict(self):
+ c = SimpleCookie()
+ c.load({'name': 'val'})
+ self.assertEqual(c['name'].value, 'val')

0 comments on commit f08e739

Please sign in to comment.
Something went wrong with that request. Please try again.