mirror of https://github.com/scrapy/scrapy.git
Fix KeyError in LocalWeakReferencedCache
This commit is contained in:
parent
b82a480e91
commit
44d5801b05
|
|
@ -105,8 +105,8 @@ class LocalWeakReferencedCache(weakref.WeakKeyDictionary):
|
|||
def __getitem__(self, key):
|
||||
try:
|
||||
return super(LocalWeakReferencedCache, self).__getitem__(key)
|
||||
except TypeError:
|
||||
return None # key is not weak-referenceable, it's not cached
|
||||
except (TypeError, KeyError):
|
||||
return None # key is either not weak-referenceable or not cached
|
||||
|
||||
|
||||
class SequenceExclude:
|
||||
|
|
|
|||
|
|
@ -271,6 +271,7 @@ class LocalWeakReferencedCacheTest(unittest.TestCase):
|
|||
self.assertNotIn(r1, cache)
|
||||
self.assertIn(r2, cache)
|
||||
self.assertIn(r3, cache)
|
||||
self.assertEqual(cache[r1], None)
|
||||
self.assertEqual(cache[r2], 2)
|
||||
self.assertEqual(cache[r3], 3)
|
||||
del r2
|
||||
|
|
|
|||
Loading…
Reference in New Issue