From 321d46aae68b7d543e0acc9f779a063a7151bc41 Mon Sep 17 00:00:00 2001 From: Christopher Michael Date: Thu, 25 Feb 2021 10:02:07 -0500 Subject: [PATCH] eeze_disk: fix potential memory leak If allocation for disk fails, then we leak memory from previously called _new_device function. This patch based on D12223 from akanad (Wonki Kim) ref D12223 Change-Id: If22a28d99a6b91eadc1b82103daabf92db515923 --- src/lib/eeze/eeze_disk.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/eeze/eeze_disk.c b/src/lib/eeze/eeze_disk.c index 60c4fa7..9469f47 100644 --- a/src/lib/eeze/eeze_disk.c +++ b/src/lib/eeze/eeze_disk.c @@ -176,7 +176,11 @@ eeze_disk_new(const char *path) if (!(disk = calloc(1, sizeof(Eeze_Disk)))) - return NULL; + { + eina_stringshare_del(syspath); + udev_device_unref(dev); + return NULL; + } if (is_dev) @@ -187,7 +191,6 @@ eeze_disk_new(const char *path) else disk->syspath = eina_stringshare_add(udev_device_get_syspath(dev)); - disk->device = dev; disk->mount_opts = EEZE_DISK_MOUNTOPT_DEFAULTS; disk->mount_cmd_changed = EINA_TRUE; -- 2.7.4