Kaydet (Commit) 031ae6e9 authored tarafından R. David Murray's avatar R. David Murray

Improve issue 7835 fix per MAL to handle the case that the

module dictionary has also been cleared.
üst 7c29f071
......@@ -145,11 +145,12 @@ class Shelf(UserDict.DictMixin):
self.dict.close()
except AttributeError:
pass
# _ClosedDict can be None when close is called from __del__ during shutdown
if _ClosedDict is None:
self.dict = None
else:
# Catch errors that may happen when close is called from __del__
# because CPython is in interpreter shutdown.
try:
self.dict = _ClosedDict()
except (NameError, TypeError):
self.dict = None
def __del__(self):
if not hasattr(self, 'writeback'):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment