- return ret;
-}
-
-static int sort_image_metadata_by_position(const void *p1, const void *p2)
-{
- struct image_metadata *bmd1 = (struct image_metadata*)p1;
- struct image_metadata *bmd2 = (struct image_metadata*)p2;
- u64 offset1 = bmd1->lookup_table_entry->resource_entry.offset;
- u64 offset2 = bmd2->lookup_table_entry->resource_entry.offset;
- if (offset1 < offset2)
- return -1;
- else if (offset1 > offset2)
- return 1;
- else
- return 0;
-}
-
-/*
- * If @lte points to a metadata resource, append it to the list of metadata
- * resources in the WIMStruct.
- */
-static int append_metadata_resource_entry(struct lookup_table_entry *lte,
- void *wim_p)
-{
- WIMStruct *w = wim_p;
-
- if (lte->resource_entry.flags & WIM_RESHDR_FLAG_METADATA) {
- if (w->current_image == w->hdr.image_count) {
- ERROR("Expected only %u images, but found more!\n",
- w->hdr.image_count);
- return WIMLIB_ERR_IMAGE_COUNT;
- } else {
- DEBUG("Found metadata resource for image %u at "
- "offset %"PRIu64"\n", w->current_image + 1,
- lte->resource_entry.offset);
- w->image_metadata[
- w->current_image++].lookup_table_entry = lte;
- }
- }
-
- /* Do nothing if not a metadata resource. */