Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #5981 -- Fixed failing regression test when using locmem cache …

…backend. Changed `add` to pickle the value as is done in `set`. Based on patch from mattmcc.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@6709 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 900811f4013ec0663e439dbdabf5f0ea266cf501 1 parent 2e9e36e
@gdub gdub authored
Showing with 6 additions and 1 deletion.
  1. +6 −1 django/core/cache/backends/locmem.py
View
7 django/core/cache/backends/locmem.py
@@ -16,8 +16,12 @@ def __init__(self, host, params):
def add(self, key, value, timeout=None):
self._lock.writer_enters()
+ # Python 2.3 and 2.4 don't allow combined try-except-finally blocks.
try:
- SimpleCacheClass.add(self, key, value, timeout)
+ try:
+ super(CacheClass, self).add(key, pickle.dumps(value), timeout)
+ except pickle.PickleError:
+ pass
finally:
self._lock.writer_leaves()
@@ -49,6 +53,7 @@ def get(self, key, default=None):
def set(self, key, value, timeout=None):
self._lock.writer_enters()
+ # Python 2.3 and 2.4 don't allow combined try-except-finally blocks.
try:
try:
super(CacheClass, self).set(key, pickle.dumps(value), timeout)
Please sign in to comment.
Something went wrong with that request. Please try again.