diff --git a/Lib/gzip.py b/Lib/gzip.py index 5f638c4e6d4..48bd522a713 100644 --- a/Lib/gzip.py +++ b/Lib/gzip.py @@ -331,7 +331,10 @@ def __del__(self): return self.close() - def flush(self): + def flush(self,zlib_mode=zlib.Z_SYNC_FLUSH): + if self.mode == WRITE: + # Ensure the compressor's buffer is flushed + self.fileobj.write(self.compress.flush(zlib_mode)) self.fileobj.flush() def fileno(self): diff --git a/Misc/NEWS b/Misc/NEWS index 0912e00e5dc..5bbc921c0a7 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -59,6 +59,8 @@ Extension Modules Library ------- +- Patch #1110248: SYNC_FLUSH the zlib buffer for GZipFile.flush. + - Patch #1107973: Allow to iterate over the lines of a tarfile.ExFileObject. - Patch #1104111: Alter setup.py --help and --help-commands.