This commit is contained in:
Behdad Esfahbod 2018-11-27 17:40:09 -05:00 committed by GitHub
parent 4a719a7f4c
commit 4e2a03b6b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 1 deletions

View File

@ -692,8 +692,10 @@ struct BEInt<Type, 2>
inline operator Type (void) const inline operator Type (void) const
{ {
#if defined(__GNUC__) || defined(__clang__) #if defined(__GNUC__) || defined(__clang__)
/* Spoon-feed the compiler a big-endian integer with alignment 1.
* https://github.com/harfbuzz/harfbuzz/pull/1398 */
struct __attribute__((packed)) packed_uint16_t { uint16_t v; }; struct __attribute__((packed)) packed_uint16_t { uint16_t v; };
return __builtin_bswap16(((packed_uint16_t *) this)->v); return __builtin_bswap16 (((packed_uint16_t *) this)->v);
#endif #endif
return (v[0] << 8) return (v[0] << 8)
+ (v[1] ); + (v[1] );