*/
/*
- * Copyright (C) 2010 Carl Thijssen
* Copyright (C) 2012 Eric Biggers
*
* wimlib - Library for working with WIM files
#endif
#include "wimlib_internal.h"
-#include "io.h"
+#include "buffer_io.h"
#include "lookup_table.h"
#include "xml.h"
NULL);
}
-WIMStruct *new_wim_struct()
+static WIMStruct *new_wim_struct()
{
WIMStruct *w = CALLOC(1, sizeof(WIMStruct));
#ifdef WITH_FUSE
}
/* Returns the compression type given in the flags of a WIM header. */
-int wim_hdr_flags_compression_type(int wim_hdr_flags)
+static int wim_hdr_flags_compression_type(int wim_hdr_flags)
{
if (wim_hdr_flags & WIM_HDR_FLAG_COMPRESSION) {
if (wim_hdr_flags & WIM_HDR_FLAG_COMPRESS_LZX)
return ret;
}
+void destroy_image_metadata(struct image_metadata *imd,
+ struct lookup_table *table)
+{
+ free_dentry_tree(imd->root_dentry, table);
+ free_security_data(imd->security_data);
+
+ /* Get rid of the lookup table entry for this image's metadata resource
+ * */
+ if (table) {
+ lookup_table_unlink(table, imd->metadata_lte);
+ free_lookup_table_entry(imd->metadata_lte);
+ }
+}
+
/* Frees the memory for the WIMStruct, including all internal memory; also
* closes all files associated with the WIMStruct. */
WIMLIBAPI void wimlib_free(WIMStruct *w)