RFR: 8328995: Launcher can't open jar files where the offset of the manifest is >4GB [v7]
Liam Miller-Cushon
cushon at openjdk.org
Thu Jul 18 21:36:59 UTC 2024
On Thu, 18 Jul 2024 14:55:31 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:
>> Liam Miller-Cushon has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision:
>>
>> - Merge remote-tracking branch 'origin/master' into JDK-8328995
>> - Move test to test/jdk/tools/launcher
>> - Add some more comments
>> - Maximum Zip64 extra field length is 32
>> - Make cendsk an unsigned short
>> - Fix disk number size
>> - Improvements
>>
>> * don't rely on variable length arrays
>> * only run the test of 64 bit machines, since it requires >4GB of heap
>> - 8328995: launcher can't open jar files where the offset of the manifest is >4GB
>
> src/java.base/share/native/libjli/parse_manifest.c line 520:
>
>> 518: free(buffer);
>> 519: return (-1);
>> 520: }
>
> I think we are missing a `break;` here, after this inner `if` block reads the zip64 extra fields and returns `JNI_TRUE`.
Thanks for the catch, fixed. It is unnecessary to loop over any other extensions that are present after the zip64 one is found.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/18479#discussion_r1683531984
More information about the core-libs-dev
mailing list