
Hi Stephen,
From: Stephen Warren swarren@nvidia.com
root_first_block_buffer should be free()d in all cases, not just when an error occurs. Fix the success exit path of the function to do this.
Signed-off-by: Stephen Warren swarren@nvidia.com
fs/ext4/ext4_common.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c index b09f23aa5b83..7d7609a91fa8 100644 --- a/fs/ext4/ext4_common.c +++ b/fs/ext4/ext4_common.c @@ -769,6 +769,7 @@ static int check_filename(char *filename, unsigned int blknr) struct ext2_dirent *previous_dir = NULL; char *ptr = NULL; struct ext_filesystem *fs = get_fs();
int ret = -1;
/* get the first block of root */ first_block_no_of_root = blknr;
@@ -822,12 +823,12 @@ static int check_filename(char *filename, unsigned int blknr) if (ext4fs_put_metadata(root_first_block_addr, first_block_no_of_root)) goto fail;
return inodeno;
}ret = inodeno;
fail: free(root_first_block_buffer);
- return -1;
- return ret;
}
int ext4fs_filename_check(char *filename)
Acked-by: Lukasz Majewski l.majewski@samsung.com Tested-by: Lukasz Majewski l.majewski@samsung.com
Test HW: Odroid XU3 - Exynos5433 [DFU tests]