From adc4e77d89d9a423c3fbe6457676b020c9ad3a64 Mon Sep 17 00:00:00 2001 From: Manish Katiyar Date: Fri, 11 Jul 2008 14:42:57 -0400 Subject: [PATCH] libext2fs: fix potential memory leak in ext2fs_initialize() If we fail doing ext2fs_allocate_block_bitmap() or ext2fs_allocate_inode_bitmap() we directly goto cleanup and don't free the memory allocated to buf. Signed-off-by: "Manish Katiyar" Signed-off-by: "Theodore Ts'o" --- lib/ext2fs/initialize.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/ext2fs/initialize.c b/lib/ext2fs/initialize.c index 011656f4..e9bfe493 100644 --- a/lib/ext2fs/initialize.c +++ b/lib/ext2fs/initialize.c @@ -105,7 +105,7 @@ errcode_t ext2fs_initialize(const char *name, int flags, int rsv_gdt; int csum_flag; int io_flags; - char *buf; + char *buf = 0; char c; if (!param || !param->s_blocks_count) @@ -429,6 +429,8 @@ ipg_retry: *ret_fs = fs; return 0; cleanup: + if (buf) + free(buf); ext2fs_free(fs); return retval; }