diff --git a/Lib/shelve.py b/Lib/shelve.py index b159e613807..9b65a0911fa 100644 --- a/Lib/shelve.py +++ b/Lib/shelve.py @@ -74,9 +74,12 @@ def __delitem__(self, key): 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()