diff --git a/tsk/fs/xfs.cpp b/tsk/fs/xfs.cpp index 1820e237977068349b7c5a5e6d819e3d9c3abe07..9d0a445c3be44ee39cf044e7c95ba7cc4b658eff 100644 --- a/tsk/fs/xfs.cpp +++ b/tsk/fs/xfs.cpp @@ -77,7 +77,7 @@ TSK_FS_META_FLAG_ENUM xfs_inode_getallocflag(XFSFS_INFO * xfsfs, TSK_INUM_T dino } tsk_error_set_errstr2("xfs_inode_getallocflag: Inode %" PRIuINUM ", AGI from block %" PRIuOFF, dino_inum, cur_block_num); - free(cur_inobt_block) + free(cur_inobt_block); return (TSK_FS_META_FLAG_ENUM) NULL; } @@ -1815,6 +1815,7 @@ parse_dir_block(TSK_FS_INFO *a_fs, TSK_FS_DIR *fs_dir, TSK_FS_META *fs_meta, xfs } ftype = dino_buf->di_core.di_mode & XFS_IN_FMT; + free(dino_buf); } uint32_t ftype32 = (uint32_t) ftype << 12; @@ -1852,7 +1853,6 @@ parse_dir_block(TSK_FS_INFO *a_fs, TSK_FS_DIR *fs_dir, TSK_FS_META *fs_meta, xfs if (tsk_fs_dir_add(fs_dir, fs_name)) { free(dirbuf); - free(dino_buf); return TSK_ERR; } @@ -1921,7 +1921,7 @@ visit_btree_node(TSK_FS_INFO *a_fs, TSK_FS_DIR *fs_dir, TSK_FS_META *fs_meta, xf tsk_error_set_errno(TSK_ERR_FS_READ); } tsk_error_set_errstr2("xfs_block_getflags: xfs_agf, cnt = %" PRId64 ", len = %" PRId64 "", cnt, len); - free(cur_bmdr_block); + free(cur_bmbt_block); return TSK_ERR; }