diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/weakref.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Lib/weakref.py b/Lib/weakref.py index 1d21e79..c71d04b 100644 --- a/Lib/weakref.py +++ b/Lib/weakref.py @@ -146,6 +146,13 @@ class WeakKeyDictionary(UserDict.UserDict): del data[k] self._remove = remove + def __delitem__(self, key): + for ref in self.data.iterkeys(): + o = ref() + if o == key: + del self.data[ref] + return + def __getitem__(self, key): return self.data[ref(key)] |