RFR JDK-8146431:j.u.z.ZipFile.getEntry("") throws AIOOBE

Xueming Shen xueming.shen at oracle.com
Mon Jan 4 21:30:22 UTC 2016


Claes,

I think the spec does not say the jar/zip file can't have an empty name entry. So
it'd be better to check first.

Sherman

On 01/04/2016 01:05 PM, Claes Redestad wrote:
> Thanks for fixing this!
>
> Can getEntryPos(new byte[0], true/false); ever return anything but -1? Otherwise it seems the check could be moved to the start of the method.
>
> /Claes
>
> On 2016-01-04 22:02, Xueming Shen wrote:
>> Hi, please help review the change for JDK-8146431
>>
>> Issue: https://bugs.openjdk.java.net/browse/JDK-8146431
>> webrev: http://cr.openjdk.java.net/~sherman/8146431
>>
>> Cause:
>>
>> The parameter "ulen" in native version zip_util.c.ZIP_GetEntry() serves two
>> purposes, (1) the length of the name (2) whether or not to try adding a
>> slash if first try failed. It has an explicit check as
>>
>>         /* If no real length was passed in, we are done */
>>         if (ulen == 0) {
>>             break;
>>         }
>>
>> The new java implementation uses and checks the flag "addSlash", but it
>> still needs to check the "name.len" before adding any slash for next try.
>>
>> Thanks,
>> Sherman
>>
>




More information about the core-libs-dev mailing list