From 1a07d4585b0497f54bf2d127e5fb8ba7cfa2958a Mon Sep 17 00:00:00 2001 From: Peng Fan Date: Thu, 26 Nov 2015 10:26:59 +0800 Subject: common: miiphyutil: avoid memory leak The following code will alloc memory for new_dev and ldev: " new_dev = mdio_alloc(); ldev = malloc(sizeof(*ldev)); " Either new_dev or ldev is NULL, directly return, but this may leak memory. So before return, using free(ldev) and mdio_free(new_dev) to avoid leaking memory, also free can handle NULL pointer. Signed-off-by: Peng Fan Cc: Joe Hershberger Cc: Simon Glass Cc: Bin Meng Reviewed-by: Bin Meng Acked-by: Joe Hershberger (cherry picked from commit 746da1bd42aa5ecc47898399514c9c76d0329706) --- common/miiphyutil.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'common/miiphyutil.c') diff --git a/common/miiphyutil.c b/common/miiphyutil.c index c0274f4..cff93b1 100644 --- a/common/miiphyutil.c +++ b/common/miiphyutil.c @@ -113,6 +113,8 @@ void miiphy_register(const char *name, if (new_dev == NULL || ldev == NULL) { printf("miiphy_register: cannot allocate memory for '%s'\n", name); + free(ldev); + mdio_free(new_dev); return; } -- cgit v1.1