Merged revisions 77809 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r77809 | ezio.melotti | 2010-01-28 03:41:30 +0200 (Thu, 28 Jan 2010) | 1 line avoid to use zlib when the compress type is not ZIP_DEFLATED ........
This commit is contained in:
parent
2472f986e2
commit
92b4743719
|
@ -463,7 +463,12 @@ class ZipExtFile(io.BufferedIOBase):
|
|||
self._fileobj = fileobj
|
||||
self._decrypter = decrypter
|
||||
|
||||
self._decompressor = zlib.decompressobj(-15)
|
||||
self._compress_type = zipinfo.compress_type
|
||||
self._compress_size = zipinfo.compress_size
|
||||
self._compress_left = zipinfo.compress_size
|
||||
|
||||
if self._compress_type == ZIP_DEFLATED:
|
||||
self._decompressor = zlib.decompressobj(-15)
|
||||
self._unconsumed = b''
|
||||
|
||||
self._readbuffer = b''
|
||||
|
@ -472,10 +477,6 @@ class ZipExtFile(io.BufferedIOBase):
|
|||
self._universal = 'U' in mode
|
||||
self.newlines = None
|
||||
|
||||
self._compress_type = zipinfo.compress_type
|
||||
self._compress_size = zipinfo.compress_size
|
||||
self._compress_left = zipinfo.compress_size
|
||||
|
||||
# Adjust read size for encrypted files since the first 12 bytes
|
||||
# are for the encryption/password information.
|
||||
if self._decrypter is not None:
|
||||
|
@ -591,7 +592,8 @@ class ZipExtFile(io.BufferedIOBase):
|
|||
self._unconsumed += data
|
||||
|
||||
# Handle unconsumed data.
|
||||
if len(self._unconsumed) > 0 and n > len_readbuffer:
|
||||
if (len(self._unconsumed) > 0 and n > len_readbuffer and
|
||||
self._compress_type == ZIP_DEFLATED):
|
||||
data = self._decompressor.decompress(
|
||||
self._unconsumed,
|
||||
max(n - len_readbuffer, self.MIN_READ_SIZE)
|
||||
|
|
Loading…
Reference in New Issue