X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Flookup_table.c;h=a24cf68887d40a4246d3a29ad7639e29f67fb506;hb=19fd5bbc4f64cc8bf735f7c2c0bb864876998cf4;hp=95708866c9197614588f23ecc0caa26ceac71d02;hpb=30ba1eb06caca0b20a47d8dd75a117c82d730da7;p=wimlib diff --git a/src/lookup_table.c b/src/lookup_table.c index 95708866..a24cf688 100644 --- a/src/lookup_table.c +++ b/src/lookup_table.c @@ -355,16 +355,18 @@ struct wim_lookup_table_entry_disk { struct resource_entry_disk resource_entry; /* Which part of the split WIM this stream is in; indexed from 1. */ - u16 part_number; + le16 part_number; /* Reference count of this stream over all WIM images. */ - u32 refcnt; + le32 refcnt; /* SHA1 message digest of the uncompressed data of this stream, or * optionally all zeroes if this stream is of zero length. */ u8 hash[SHA1_HASH_SIZE]; } _packed_attribute; +#define WIM_LOOKUP_TABLE_ENTRY_DISK_SIZE 50 + /* * Reads the lookup table from a WIM file. * @@ -382,6 +384,10 @@ read_lookup_table(WIMStruct *w) struct wim_lookup_table_entry_disk table_buf[BUFFER_SIZE / sizeof(struct wim_lookup_table_entry_disk)] _aligned_attribute(8); + + BUILD_BUG_ON(sizeof(struct wim_lookup_table_entry_disk) != + WIM_LOOKUP_TABLE_ENTRY_DISK_SIZE); + off_t offset; size_t buf_entries_remaining; const struct wim_lookup_table_entry_disk *disk_entry;