diff options
| -rw-r--r-- | Lib/shelve.py | 6 | ||||
| -rw-r--r-- | Misc/NEWS | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/Lib/shelve.py b/Lib/shelve.py index fb41c84..8055f42 100644 --- a/Lib/shelve.py +++ b/Lib/shelve.py @@ -145,7 +145,11 @@ class Shelf(UserDict.DictMixin): self.dict.close() except AttributeError: pass - self.dict = _ClosedDict() + # _ClosedDict can be None when close is called from __del__ during shutdown + if _ClosedDict is None: + self.dict = None + else: + self.dict = _ClosedDict() def __del__(self): if not hasattr(self, 'writeback'): @@ -94,6 +94,9 @@ Core and Builtins Library ------- +- Issue #7835: shelve should no longer produce mysterious warnings during + interpreter shutdown. + - Issue #2746: Don't escape ampersands and angle brackets ("&", "<", ">") in XML processing instructions and comments. These raw characters are allowed by the XML specification, and are necessary when outputting e.g. |
