summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorInvalidInterrupt <InvalidInterrupt@users.noreply.github.com>2017-04-11 17:35:17 -0700
committerTim Graham <timograham@gmail.com>2017-04-17 22:27:59 -0400
commit5d556d2aaf64a4181b121e3cb51009d59f02869e (patch)
treea8823972b1a189849d7bd38bc6fc0b23590ece0d /django
parent844ae40a7cdcb1738ca3a2e8f13bb6b8c2e22efd (diff)
[1.11.x] Fixed #28066 -- Prevented SessionBase.cycle_key() from discarding data.
Backport of dda596ca3296f5b2574cf4876a4e176594f52834 from master
Diffstat (limited to 'django')
-rw-r--r--django/contrib/sessions/backends/base.py5
-rw-r--r--django/contrib/sessions/backends/signed_cookies.py3
2 files changed, 2 insertions, 6 deletions
diff --git a/django/contrib/sessions/backends/base.py b/django/contrib/sessions/backends/base.py
index 40c557ba0b..8e09fd8d80 100644
--- a/django/contrib/sessions/backends/base.py
+++ b/django/contrib/sessions/backends/base.py
@@ -306,10 +306,7 @@ class SessionBase(object):
"""
Creates a new session key, while retaining the current session data.
"""
- try:
- data = self._session_cache
- except AttributeError:
- data = {}
+ data = self._session
key = self.session_key
self.create()
self._session_cache = data
diff --git a/django/contrib/sessions/backends/signed_cookies.py b/django/contrib/sessions/backends/signed_cookies.py
index f4c085fb59..c790fbe90f 100644
--- a/django/contrib/sessions/backends/signed_cookies.py
+++ b/django/contrib/sessions/backends/signed_cookies.py
@@ -74,9 +74,8 @@ class SessionStore(SessionBase):
generate a secure url-safe Base64-encoded string of data as our
session key.
"""
- session_cache = getattr(self, '_session_cache', {})
return signing.dumps(
- session_cache, compress=True,
+ self._session, compress=True,
salt='django.contrib.sessions.backends.signed_cookies',
serializer=self.serializer,
)