mirror of https://github.com/python/cpython
[Patch #654421 from Matthew Mueller]
gzip shouldn't raise ValueError on corrupt files Currently the gzip module will raise a ValueError if the file was corrupt (bad crc or bad size). I can't see how that applies to reading a corrupt file. IOError seems better, and it's what code will likely be looking for.
This commit is contained in:
parent
570e35870a
commit
64edd6ac1d
|
@ -305,9 +305,9 @@ class GzipFile:
|
||||||
crc32 = read32(self.fileobj)
|
crc32 = read32(self.fileobj)
|
||||||
isize = U32(read32(self.fileobj)) # may exceed 2GB
|
isize = U32(read32(self.fileobj)) # may exceed 2GB
|
||||||
if U32(crc32) != U32(self.crc):
|
if U32(crc32) != U32(self.crc):
|
||||||
raise ValueError, "CRC check failed"
|
raise IOError, "CRC check failed"
|
||||||
elif isize != LOWU32(self.size):
|
elif isize != LOWU32(self.size):
|
||||||
raise ValueError, "Incorrect length of data produced"
|
raise IOError, "Incorrect length of data produced"
|
||||||
|
|
||||||
def close(self):
|
def close(self):
|
||||||
if self.mode == WRITE:
|
if self.mode == WRITE:
|
||||||
|
|
Loading…
Reference in New Issue