On Mon, Nov 23, 2009 at 12:45 PM, sebb <seb...@gmail.com> wrote: > FYI: > > I can open the jar using the RI jar application on WinXP, but Winzip > 9.0 complains. > On people.apache.org the jar tool works but UnZip 6.00 reports: > > 6 extra bytes at beginning or within zipfile > (attempting to process anyway) > > AFAICT, Ant 1.7.1/Java 1.4.2 does not work either on Win/XP - no error > reported, but no output either. > > So Harmony is not alone in having problems with the test jar. >
Got it. So even if I fix Harmony to read zip files that contain flush blocks, I definitely won't change Harmony so that it writes them. Being able to all files formatted according with the spec is essential, and we should also write files that WinZip can read. This is somewhat lame, because it means the core APIs preclude a proper implementation of flush(). That said, there is a fine compromise available. Limiting flush() support to GzipOutputStream should make everyone happy. GZIP is stream-oriented, whereas ZIP is file-oriented. Supporting flush() on GZIP only streams satisfies my stated requirements: being able to support interactive communication over a compressed stream.