示例#1
0
文件: fs.c 项目: emiraga/squashfuse
void sqfs_destroy(sqfs *fs) {
	sqfs_table_destroy(&fs->id_table);
	sqfs_table_destroy(&fs->frag_table);
	if (sqfs_export_ok(fs))
		sqfs_table_destroy(&fs->export_table);
	sqfs_cache_destroy(&fs->md_cache);
	sqfs_cache_destroy(&fs->data_cache);
	sqfs_cache_destroy(&fs->frag_cache);
	sqfs_cache_destroy(&fs->blockidx);
}
示例#2
0
文件: cache.c 项目: vasi/squashfuse
sqfs_err sqfs_cache_init(sqfs_cache *cache, size_t size, size_t count,
		sqfs_cache_dispose dispose) {
	cache->size = size;
	cache->count = count;
	cache->dispose = dispose;
	cache->next = 0;
	
	cache->idxs = calloc(count, sizeof(sqfs_cache_idx));
	cache->buf = calloc(count, size);
	if (cache->idxs && cache->buf)
		return SQFS_OK;
	
	sqfs_cache_destroy(cache);
	return SQFS_ERR;
}