1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Fixed #26520 -- Fixed a regression where SessionBase.pop() didn't return a KeyError.

This commit is contained in:
Tobias Kroenke
2016-04-20 10:36:59 +02:00
committed by Tim Graham
parent 973f393761
commit b040ac06eb
4 changed files with 13 additions and 3 deletions

View File

@@ -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: