From: Eryu Guan Date: Mon, 19 Oct 2015 11:37:57 +0000 (+0800) Subject: btrfs-progs: fix memory leak on error path X-Git-Tag: upstream/4.16.1~1955 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=140592187b37dafba98dc55e71c429c56d6e60b8;p=platform%2Fupstream%2Fbtrfs-progs.git btrfs-progs: fix memory leak on error path dev_scans and t_scans should be freed on malloc error. Signed-off-by: Eryu Guan Signed-off-by: David Sterba --- diff --git a/chunk-recover.c b/chunk-recover.c index d0ca920..f8693f7 100644 --- a/chunk-recover.c +++ b/chunk-recover.c @@ -846,11 +846,16 @@ static int scan_devices(struct recover_control *rc) if (!dev_scans) return -ENOMEM; t_scans = (pthread_t *)malloc(sizeof(pthread_t) * devnr); - if (!t_scans) + if (!t_scans) { + free(dev_scans); return -ENOMEM; + } t_rets = (long *)malloc(sizeof(long) * devnr); - if (!t_rets) + if (!t_rets) { + free(dev_scans); + free(t_scans); return -ENOMEM; + } list_for_each_entry(dev, &rc->fs_devices->devices, dev_list) { fd = open(dev->name, O_RDONLY);