The invalid checkpoin is freed in validate_checkpoint(). Signed-off-by: Sheng Yong <shengyo...@huawei.com> --- fsck/mount.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/fsck/mount.c b/fsck/mount.c index fe68f37..7533926 100644 --- a/fsck/mount.c +++ b/fsck/mount.c @@ -469,11 +469,8 @@ int get_valid_checkpoint(struct f2fs_sb_info *sbi) cur_page = cp2; sbi->cur_cp = 2; version = cp2_version; - } else { - free(cp1); - free(cp2); + } else goto fail_no_cp; - } MSG(0, "Info: CKPT version = %llx\n", version); @@ -495,8 +492,10 @@ int get_valid_checkpoint(struct f2fs_sb_info *sbi) memcpy(ckpt + i * blk_size, cur_page, blk_size); } } - free(cp1); - free(cp2); + if (cp1) + free(cp1); + if (cp2) + free(cp2); return 0; fail_no_cp: -- 1.9.1 ------------------------------------------------------------------------------ _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel