From: zhanchengbin Date: Fri, 31 Dec 2021 07:43:36 +0000 (+0800) Subject: libext2fs: fix memory leak in error path while opening test_io manager X-Git-Tag: v1.46.6-rc1~56 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1c966c9dffef7e823a020a2f3982e9b9b1953e8b;p=thirdparty%2Fe2fsprogs.git libext2fs: fix memory leak in error path while opening test_io manager Link: https://lore.kernel.org/r/d0632bbc-9713-38a9-c914-137b702f6ae1@huawei.com Signed-off-by: zhanchengbin Signed-off-by: Theodore Ts'o --- diff --git a/lib/ext2fs/test_io.c b/lib/ext2fs/test_io.c index 480e68fcc..6843edbcf 100644 --- a/lib/ext2fs/test_io.c +++ b/lib/ext2fs/test_io.c @@ -248,6 +248,8 @@ static errcode_t test_open(const char *name, int flags, io_channel *channel) return 0; cleanup: + if (io && io->name) + ext2fs_free_mem(&io->name); if (io) ext2fs_free_mem(&io); if (data) diff --git a/lib/ext2fs/undo_io.c b/lib/ext2fs/undo_io.c index eb56f53d5..f4a6d5267 100644 --- a/lib/ext2fs/undo_io.c +++ b/lib/ext2fs/undo_io.c @@ -790,6 +790,8 @@ cleanup: io_channel_close(data->real); if (data) ext2fs_free_mem(&data); + if (io && io->name) + ext2fs_free_mem(&io->name); if (io) ext2fs_free_mem(&io); return retval;