]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
resize2fs: fix miscellaneous memory leaks
authorTheodore Ts'o <tytso@mit.edu>
Mon, 15 Jun 2009 07:51:51 +0000 (03:51 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 15 Jun 2009 07:54:31 +0000 (03:54 -0400)
Fix various memory leaks which were discovered using valgrind.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
resize/main.c
resize/resize2fs.c

index 330e3ea746b4e8cf16319152a58fe2a02f1214be..9b03ba929128121b2f40ba8b332e08f8ccb088c4 100644 (file)
@@ -250,8 +250,10 @@ int main (int argc, char ** argv)
                                device_name);
                        exit(1);
                }
-               if (!(mount_flags & EXT2_MF_MOUNTED) || (mtpt[len-1] == 0))
+               if (!(mount_flags & EXT2_MF_MOUNTED) || (mtpt[len-1] == 0)) {
+                       free(mtpt);
                        break;
+               }
                free(mtpt);
                len = 2 * len;
        }
index 0d5dc81a45ad537bc67192ff4306e60cda212aa0..e87a2343f6b839b2e125b9eb9322e872cbbf98b1 100644 (file)
@@ -158,6 +158,10 @@ errcode_t resize_fs(ext2_filsys fs, blk_t *new_size, int flags,
        ext2fs_free(rfs->old_fs);
        if (rfs->itable_buf)
                ext2fs_free_mem(&rfs->itable_buf);
+       if (rfs->reserve_blocks)
+               ext2fs_free_block_bitmap(rfs->reserve_blocks);
+       if (rfs->move_blocks)
+               ext2fs_free_block_bitmap(rfs->move_blocks);
        ext2fs_free_mem(&rfs);
 
        return 0;