From: Manish Katiyar Date: Fri, 11 Jul 2008 18:42:57 +0000 (-0400) Subject: libext2fs: fix potential memory leak in ext2fs_initialize() X-Git-Tag: v1.41.1~142 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=adc4e77d89d9a423c3fbe6457676b020c9ad3a64;p=thirdparty%2Fe2fsprogs.git 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" --- diff --git a/lib/ext2fs/initialize.c b/lib/ext2fs/initialize.c index 011656f4e..e9bfe4938 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; }