ymnk/jzlib — Issue #4: Handle unwrapped (header/checkless) streams 
Author: smparkes
Created: 2011-11-12 20:32:02+00:00
State: open

Current stream inflate code doesn't handle unwrapped data.

There a several corner cases. zlib doesn't always return Z_STREAM_END. It doesn't always set the DONE state.

I tried to put together a patch, but haven't been able to cover all the cases of block size and compressible/incompressible.

I ported my native C zlib code that uses Inflater directly and it works, but my use case is more restrictive (a single block of compressed data) so I don't have to handle all the cases that the inflate stream does.

I don't have an adequate patch but the updated test code at

https://github.com/smparkes/jzlib/blob/d668d808744bed27b60a5cd6a6744529960e5b60/src/test/scala/DeflaterInflaterStreamTest.scala

includes the corner cases that fail.