Fix various miscellaneous memory leaks which were discovered using valgrind.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
unlink(ctx->dir_info->tdb_fn);
free(ctx->dir_info->tdb_fn);
}
+ if (ctx->dir_info->array)
+ ext2fs_free_mem(&ctx->dir_info->array);
+ ctx->dir_info->array = 0;
ctx->dir_info->size = 0;
ctx->dir_info->count = 0;
ext2fs_free_mem(&ctx->dir_info);
if (ctx->dx_dir_info) {
dir = ctx->dx_dir_info;
- for (i=0; i < ctx->dx_dir_info_count; i++) {
+ for (i=0; i < ctx->dx_dir_info_count; i++,dir++) {
if (dir->dx_block) {
ext2fs_free_mem(&dir->dx_block);
dir->dx_block = 0;
next = p->next;
free(p);
}
+ free(di);
free(node);
}
next = p->next;
free(p);
}
+ free(db);
free(node);
}
*/
dict_free_nodes(&ino_dict);
dict_free_nodes(&blk_dict);
+ ext2fs_free_inode_bitmap(inode_dup_map);
}
/*
dx_dir->numblocks = 0;
}
}
+ e2fsck_free_dx_dir_info(ctx);
#endif
ext2fs_free_mem(&buf);
ext2fs_free_dblist(fs->dblist);
argv[optind]);
fatal_error(ctx, 0);
}
- ctx->filesystem_name = string_copy(ctx, ctx->filesystem_name, 0);
if (extended_opts)
parse_extended_opts(ctx, extended_opts);