summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorTobias Kroenke <tobias@kroenke.de>2016-04-20 10:36:59 +0200
committerTim Graham <timograham@gmail.com>2016-04-20 13:06:47 -0400
commitb040ac06ebba2348cece7390b88f746d2c91d07b (patch)
tree5de9eeb2d1448854803505608513d5c5dd8ef1b1 /django
parent973f393761253f5fbf031f435d103545f1927041 (diff)
Fixed #26520 -- Fixed a regression where SessionBase.pop() didn't return a KeyError.
Diffstat (limited to 'django')
-rw-r--r--django/contrib/sessions/backends/base.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/django/contrib/sessions/backends/base.py b/django/contrib/sessions/backends/base.py
index e18b3c753f..acade4a512 100644
--- a/django/contrib/sessions/backends/base.py
+++ b/django/contrib/sessions/backends/base.py
@@ -42,6 +42,8 @@ class SessionBase(object):
TEST_COOKIE_NAME = 'testcookie'
TEST_COOKIE_VALUE = 'worked'
+ __not_given = object()
+
def __init__(self, session_key=None):
self._session_key = session_key
self.accessed = False
@@ -65,9 +67,10 @@ class SessionBase(object):
def get(self, key, default=None):
return self._session.get(key, default)
- def pop(self, key, default=None):
+ def pop(self, key, default=__not_given):
self.modified = self.modified or key in self._session
- return self._session.pop(key, default)
+ args = () if default is self.__not_given else (default,)
+ return self._session.pop(key, *args)
def setdefault(self, key, value):
if key in self._session: