btrfsprogs/0001-Plug-Memory-leak-in-find_and_setup_log_root.patch

29 lines
805 B
Diff
Raw Normal View History

commit a2fe2e1b978f724f53d025461e65adb4e030d043
Author: Dirk Mueller <dmueller@suse.de>
Date: Thu Dec 16 20:40:34 2010 +0100
[PATCH] Plug Memory leak in find_and_setup_log_root()
The error path forgets to free a previously allocated
memory structure.
diff --git a/disk-io.c b/disk-io.c
index a6e1000..2b5e1d5 100644
--- a/disk-io.c
+++ b/disk-io.c
@@ -423,11 +423,13 @@ static int find_and_setup_log_root(struct btrfs_root *tree_root,
{
u32 blocksize;
u64 blocknr = btrfs_super_log_root(disk_super);
- struct btrfs_root *log_root = malloc(sizeof(struct btrfs_root));
+ struct btrfs_root *log_root;
if (blocknr == 0)
return 0;
+ log_root = malloc(sizeof(struct btrfs_root));
+
blocksize = btrfs_level_size(tree_root,
btrfs_super_log_root_level(disk_super));