Skip to content

Commit 0c7eae5

Browse files
authored
Merge pull request psf#135 from sigmavirus24/bug/134
Ignore corrupted caches
2 parents d5a5f85 + b3640e4 commit 0c7eae5

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

cachecontrol/serialize.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ def _loads_v1(self, request, data):
174174
def _loads_v2(self, request, data):
175175
try:
176176
cached = json.loads(zlib.decompress(data).decode("utf8"))
177-
except ValueError:
177+
except (ValueError, zlib.error):
178178
return
179179

180180
# We need to decode the items that we've base64 encoded

tests/test_serialization.py

+5
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,11 @@ def test_read_v1_serialized_with_py2_TypeError(self):
6060
# string.
6161
assert resp.data == 'Hello World'.encode('utf-8')
6262

63+
def test_read_v2_corrupted_cache(self):
64+
# This should prevent a regression of bug #134
65+
req = Mock()
66+
assert self.serializer._loads_v2(req, b'') is None
67+
6368
def test_read_version_three_streamable(self, url):
6469
original_resp = requests.get(url, stream=True)
6570
req = original_resp.request

0 commit comments

Comments
 (0)