malloc failures in java/util/zip/Deflater
Xueming.Shen at Sun.COM
Thu Jul 9 17:41:53 UTC 2009
Zero length entry should be allowed. This is a regression, the result of the
un-successful fix for 6728376:-(
The webrev for 6728376 is
We have the same in Inflater as well. I will file a bug for it.
Thanks Mario for catching this.
Kelly O'Hair wrote:
> I tend to agree.
> Shouldn't a zero length entry be treated special, or disallowed?
> David Holmes - Sun Microsystems wrote:
>> Hi Mario,
>> I'm not familiar with this particular code but doesn't a value of
>> this_len==0 imply that there's nothing to do and a whole chunk of
>> code here can be skipped? Is finding this_len==0 even valid here?
>> Your patch fixes your problem, but it seems to me the code either
>> shouldn't get this_len==0 or else should be handling it differently.
>> David Holmes
>> Mario Torre said the following on 07/09/09 03:59:
>>> Hi all,
>>> I've found a problem in the Deflater code in OpenJDK, where a length
>>> of zero bytes is passed to malloc.
>>> According to the specs, malloc may return either a valid pointer
>>> that can be passed to free, or NULL, while generally NULL is
>>> considered to be a failure. Linux and Solaris, albeit non specifying
>>> it, return always a valid pointer, as far as I know, but I have a
>>> weird OS here that does indeed return NULL.
>>> I've fixed this issue locally, and thought I could share the patch
>>> with you:
More information about the core-libs-dev