From: Tim Peters Date: Wed, 28 Nov 2001 23:16:40 +0000 (+0000) Subject: SF bug 486480: zipfile __del__ is broken X-Git-Tag: v2.2.1c1~654 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d15f8bbe320811d8edaf869c91308679d246693f;p=thirdparty%2FPython%2Fcpython.git SF bug 486480: zipfile __del__ is broken ZipFile.__del__(): call ZipFile.close(), like its docstring says it does. ZipFile.close(): allow calling more than once (as all file-like objects in Python should support). --- diff --git a/Lib/zipfile.py b/Lib/zipfile.py index a06731e4c930..4b59ac6dea60 100644 --- a/Lib/zipfile.py +++ b/Lib/zipfile.py @@ -454,13 +454,13 @@ class ZipFile: def __del__(self): """Call the "close()" method in case the user forgot.""" - if self.fp and not self._filePassed: - self.fp.close() - self.fp = None + self.close() def close(self): """Close the file, and for mode "w" and "a" write the ending records.""" + if self.fp is None: + return if self.mode in ("w", "a"): # write ending records count = 0 pos1 = self.fp.tell()