> Please review this cleanup PR which removes overrides of
> `InflaterInputStream.fill` in `ZipFileInflaterInputStream` and
> `ZipFileSystem::getInputStream`. Associated boolean fields used to track
> `eof` are also removed.
>
> These overrides exist to provide zlib with an extra dummy byte at the end of
> raw compressed streams (no wrapping):
>
>
> // Override fill() method to provide an extra "dummy" byte
> // at the end of the input stream. This is required when
> // using the "nowrap" Inflater option.
> protected void fill() throws IOException {
>
> However, zlib has not required such an extra dummy byte since 2003.
>
>
> Changes in 1.2.0 (9 March 2003)
> - New and improved inflate code
> - Raw inflate no longer needs an extra dummy byte at end
> ```
>
> The code in these overrides is effectively dead and removing it cleans up our
> code and reclaims weirdness dollars for our budget.
>
> Risk: I cannot imagine anyone is building OpenJDK with a 21 year old ZLIB.
> Please advise if this is the case or if any zlib fork in use still has this
> limitation.
>
> Testing: ZIP and ZIPFS tests run green locally. GHA results pending. No tests
> are added or modified, this is a cleanup-only PR. Manually verified that the
> code is dead by injecting AssertionErrors.
Eirik Bjørsnøs has updated the pull request incrementally with one additional
commit since the last revision:
Update Inflater and Deflater constructors taking 'nowrap' options to explain
more clearly what this option does
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/21467/files
- new: https://git.openjdk.org/jdk/pull/21467/files/661032c8..66abb0dc
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=21467&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=21467&range=00-01
Stats: 14 lines in 2 files changed: 2 ins; 2 del; 10 mod
Patch: https://git.openjdk.org/jdk/pull/21467.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/21467/head:pull/21467
PR: https://git.openjdk.org/jdk/pull/21467