Author: ebourg
Date: Sun Dec 22 22:34:12 2013
New Revision: 1553043
URL: http://svn.apache.org/r1553043
Log:
Fixed the decompression of imploded zip entries using a Shannon-Fano tree of
depth 16
Added:
commons/proper/compress/trunk/src/test/resources/moby-imploded.zip
- copied unchanged from r1553040,
commons/proper/compress/trunk/src/test/resources/tika-moby.zip
Removed:
commons/proper/compress/trunk/src/test/resources/tika-moby.zip
Modified:
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
commons/proper/compress/trunk/src/test/java/org/apache/commons/compress/archivers/zip/ExplodeSupportTest.java
Modified:
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
URL:
http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java?rev=1553043&r1=1553042&r2=1553043&view=diff
==============================================================================
---
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
(original)
+++
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/BinaryTree.java
Sun Dec 22 22:34:12 2013
@@ -82,7 +82,7 @@ class BinaryTree {
* @return the value decoded, or -1 if the end of the stream is reached
*/
public int read(BitStream stream) throws IOException {
- short currentIndex = 0;
+ int currentIndex = 0;
while (true) {
int bit = stream.nextBit();
@@ -90,7 +90,7 @@ class BinaryTree {
return -1;
}
- short childIndex = (short) (2 * currentIndex + 1 + bit);
+ int childIndex = 2 * currentIndex + 1 + bit;
int value = tree[childIndex];
if (value == NODE) {
// consume the next bit
Modified:
commons/proper/compress/trunk/src/test/java/org/apache/commons/compress/archivers/zip/ExplodeSupportTest.java
URL:
http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/test/java/org/apache/commons/compress/archivers/zip/ExplodeSupportTest.java?rev=1553043&r1=1553042&r2=1553043&view=diff
==============================================================================
---
commons/proper/compress/trunk/src/test/java/org/apache/commons/compress/archivers/zip/ExplodeSupportTest.java
(original)
+++
commons/proper/compress/trunk/src/test/java/org/apache/commons/compress/archivers/zip/ExplodeSupportTest.java
Sun Dec 22 22:34:12 2013
@@ -57,8 +57,8 @@ public class ExplodeSupportTest extends
testArchiveWithImplodeCompression("target/test-classes/archives/imploding-8Kdict-3trees.zip",
"LICENSE.TXT");
}
- public void XtestTikaTestArchive() throws IOException {
- testArchiveWithImplodeCompression("target/test-classes/tika-moby.zip",
"README");
+ public void testTikaTestArchive() throws IOException {
+
testArchiveWithImplodeCompression("target/test-classes/moby-imploded.zip",
"README");
}
private void testZipStreamWithImplodeCompression(String filename, String
entryName) throws IOException {
@@ -87,8 +87,8 @@ public class ExplodeSupportTest extends
testZipStreamWithImplodeCompression("target/test-classes/archives/imploding-8Kdict-3trees.zip",
"LICENSE.TXT");
}
- public void XtestTikaTestStream() throws IOException {
-
testZipStreamWithImplodeCompression("target/test-classes/tika-moby.zip",
"README");
+ public void testTikaTestStream() throws IOException {
+
testZipStreamWithImplodeCompression("target/test-classes/moby-imploded.zip",
"README");
}
}