diff options
author | Guido van Rossum <guido@python.org> | 1997-12-09 14:18:33 +0000 |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1997-12-09 14:18:33 +0000 |
commit | 6599fb0917704247f72b3338e622ebcbb94ba207 (patch) | |
tree | 4b547af712c7903c666a17f19e112342bdc93572 /Lib/shelve.py | |
parent | 19b55f2d17d2a189f9b48844c06d501f25ca6dc5 (diff) | |
download | cpython-git-6599fb0917704247f72b3338e622ebcbb94ba207.tar.gz |
Make close(), and hence __del__(), robust in the light of the world
being destroyed already.
Diffstat (limited to 'Lib/shelve.py')
-rw-r--r-- | Lib/shelve.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Lib/shelve.py b/Lib/shelve.py index b159e61380..9b65a0911f 100644 --- a/Lib/shelve.py +++ b/Lib/shelve.py @@ -74,9 +74,12 @@ class Shelf: del self.dict[key] def close(self): - if hasattr(self.dict, 'close'): - self.dict.close() - self.dict = None + try: + if self.dict: + self.dict.close() + except: + pass + self.dict = 0 def __del__(self): self.close() |