diff --git a/engine/common/hpak.h b/engine/common/hpak.h index 0b4add17..c6c40265 100644 --- a/engine/common/hpak.h +++ b/engine/common/hpak.h @@ -76,6 +76,8 @@ typedef struct int infotableofs; } hpak_header_t; +STATIC_ASSERT( sizeof( hpak_header_t ) == 12, "invalid hpak_header_t size" ); + typedef struct { dresource_t resource; @@ -83,6 +85,8 @@ typedef struct int disksize; } hpak_lump_t; +STATIC_ASSERT( sizeof( hpak_lump_t ) == 144, "invalid hpak_lump_t size" ); + typedef struct { int count; diff --git a/engine/custom.h b/engine/custom.h index da01f745..04d84894 100644 --- a/engine/custom.h +++ b/engine/custom.h @@ -90,4 +90,12 @@ typedef struct customization_s #define FCUST_WIPEDATA ( 1<<1 ) #define FCUST_IGNOREINIT ( 1<<2 ) +#if !XASH_64BIT +STATIC_ASSERT( sizeof( customization_t ) == 164, "invalid customization_t size, broken API" ); +STATIC_ASSERT( sizeof( resource_t ) == 136, "invalid resource_t size, broken API" ); +#else +STATIC_ASSERT( sizeof( customization_t ) == 192, "invalid customization_t size, broken API" ); +STATIC_ASSERT( sizeof( resource_t ) == 144, "invalid resource_t size, broken API" ); +#endif + #endif // CUSTOM_H