Hello!

Do you think it is good to go now?

With kind regards,

Ivan


On 1/11/19 11:30 AM, Ivan Gerasimov wrote:
Good catch, thank you!

Indeed, if we don't reset localifsSize then we could end up accessing already freed memory, which is worse than just a memory leak.

Here's the updated webrev:

http://cr.openjdk.java.net/~igerasim/8007606/01/webrev/

With kind regards,
Ivan

On 1/11/19 4:43 AM, Baesken, Matthias wrote:
Hi Ivan,

Shouldn't you reset localifsSize to 0 in case of the early return ? The comment says localifsSize is the size of the array so the size of the array is 0 again after freeing.


637 static struct localinterface *localifs = 0;
  638 static int localifsSize = 0;    /* size of array */
639 static int nifs = 0; /* number of entries used in array */

    ...

679             if (localifsTemp == 0) {
  680                 free(localifs);
  681                 localifs = 0;
  682                 nifs = 0;
  683                 fclose(f);
  684                 return;
  685             }




Best regards, Matthias



Date: Thu, 10 Jan 2019 20:29:08 -0800
From: Ivan Gerasimov <ivan.gerasi...@oracle.com>
To: "net-dev@openjdk.java.net" <net-dev@openjdk.java.net>
Subject: RFR 8007606 : Handle realloc() failure in
    unix/native/libnet/net_util_md.c correctly
Message-ID: <3dc3c26b-fea7-2538-2c7a-bfa623f2f...@oracle.com>
Content-Type: text/plain; charset=utf-8; format=flowed

Hello!

This seems to be the last use of realloc() without proper handling of a
failure.

Would you please help review a trivial fix?

BUGURL: https://bugs.openjdk.java.net/browse/JDK-8007606
WEBREV: http://cr.openjdk.java.net/~igerasim/8007606/00/webrev/

Thanks in advance!

--
With kind regards,
Ivan Gerasimov





--
With kind regards,
Ivan Gerasimov

Reply via email to