You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bo...@apache.org on 2014/08/22 06:07:59 UTC
svn commit: r1619661 -
/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
Author: bodewig
Date: Fri Aug 22 04:07:58 2014
New Revision: 1619661
URL: http://svn.apache.org/r1619661
Log:
Inflater knows the amount of data it has written
Modified:
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
Modified: commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
URL: http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java?rev=1619661&r1=1619660&r2=1619661&view=diff
==============================================================================
--- commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java (original)
+++ commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java Fri Aug 22 04:07:58 2014
@@ -74,8 +74,6 @@ public class GzipCompressorInputStream e
// CRC32 from uncompressed data
private final CRC32 crc = new CRC32();
- private long memberSize;
-
// True once everything has been decompressed
private boolean endReached = false;
@@ -231,7 +229,6 @@ public class GzipCompressorInputStream e
// Reset
inf.reset();
crc.reset();
- memberSize = 0;
return true;
}
@@ -292,7 +289,6 @@ public class GzipCompressorInputStream e
}
crc.update(b, off, ret);
- memberSize += ret;
off += ret;
len -= ret;
size += ret;
@@ -326,7 +322,7 @@ public class GzipCompressorInputStream e
// Uncompressed size modulo 2^32 (ISIZE in the spec)
long isize = readLittleEndianInt(inData);
- if (isize != (memberSize & 0xffffffffl)) {
+ if (isize != (inf.getBytesWritten() & 0xffffffffl)) {
throw new IOException("Gzip-compressed data is corrupt"
+ "(uncompressed size mismatch)");
}