From: RĂ©mi Denis-Courmont Date: Thu, 1 May 2008 15:37:43 +0000 (+0300) Subject: Use macro for __attribute__((packed)) X-Git-Tag: 0.9.0-test0~1273 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=311e5e3ab7ee5981eaf187565472c0b942c7bc79;p=vlc Use macro for __attribute__((packed)) --- diff --git a/include/vlc_codecs.h b/include/vlc_codecs.h index 35da7d46c8..ea421ed34c 100644 --- a/include/vlc_codecs.h +++ b/include/vlc_codecs.h @@ -44,9 +44,7 @@ typedef struct _GUID #ifndef _WAVEFORMATEX_ #define _WAVEFORMATEX_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED _WAVEFORMATEX { uint16_t wFormatTag; uint16_t nChannels; @@ -61,9 +59,7 @@ _WAVEFORMATEX { #ifndef _WAVEFORMATEXTENSIBLE_ #define _WAVEFORMATEXTENSIBLE_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED _WAVEFORMATEXTENSIBLE { WAVEFORMATEX Format; union { @@ -79,9 +75,7 @@ _WAVEFORMATEXTENSIBLE { #ifndef _WAVEHEADER_ #define _WAVEHEADER_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED _WAVEHEADER { uint32_t MainChunkID; uint32_t Length; @@ -102,9 +96,7 @@ _WAVEHEADER { #if !defined(_BITMAPINFOHEADER_) && !defined(WIN32) #define _BITMAPINFOHEADER_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { uint32_t biSize; uint32_t biWidth; @@ -120,9 +112,7 @@ typedef struct } BITMAPINFOHEADER, *PBITMAPINFOHEADER, *LPBITMAPINFOHEADER; typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { BITMAPINFOHEADER bmiHeader; int bmiColors[1]; @@ -132,9 +122,7 @@ typedef struct #ifndef _RECT32_ #define _RECT32_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { int left, top, right, bottom; } RECT32; @@ -148,9 +136,7 @@ typedef int64_t REFERENCE_TIME; #ifndef _VIDEOINFOHEADER_ #define _VIDEOINFOHEADER_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { RECT32 rcSource; RECT32 rcTarget; @@ -164,9 +150,7 @@ typedef struct #ifndef _RGBQUAD_ #define _RGBQUAD_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { uint8_t rgbBlue; uint8_t rgbGreen; @@ -178,9 +162,7 @@ typedef struct #ifndef _TRUECOLORINFO_ #define _TRUECOLORINFO_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { uint32_t dwBitMasks[3]; RGBQUAD1 bmiColors[256]; @@ -190,9 +172,7 @@ typedef struct #ifndef _VIDEOINFO_ #define _VIDEOINFO_ typedef struct -#ifdef HAVE_ATTRIBUTE_PACKED - __attribute__((__packed__)) -#endif +ATTR_PACKED { RECT32 rcSource; RECT32 rcTarget; diff --git a/include/vlc_common.h b/include/vlc_common.h index 2e92ea3654..537c0fcf6f 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -780,6 +780,10 @@ static inline void _SetQWBE( uint8_t *p, uint64_t i_qw ) # define ATTR_ALIGN(align) #endif +#ifdef HAVE_ATTRIBUTE_PACKED +# define ATTR_PACKED __attribute__((__packed__)) +#endif + /* */ #define VLC_UNUSED(x) (void)(x)