From 6c414bb6d49b5c797a0cf25b2859281b855b9352 Mon Sep 17 00:00:00 2001 From: Måns Rullgård Date: Wed, 17 Dec 2008 02:30:26 +0000 Subject: AC3: fix strict aliasing violation in parser Originally committed as revision 16181 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/ac3_parser.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'libavcodec/ac3_parser.c') diff --git a/libavcodec/ac3_parser.c b/libavcodec/ac3_parser.c index aedcbcd472..ccd687ae13 100644 --- a/libavcodec/ac3_parser.c +++ b/libavcodec/ac3_parser.c @@ -158,11 +158,14 @@ static int ac3_sync(uint64_t state, AACAC3ParseContext *hdr_info, int *need_next_header, int *new_frame_start) { int err; - uint64_t tmp = be2me_64(state); + union { + uint64_t u64; + uint8_t u8[8]; + } tmp = { be2me_64(state) }; AC3HeaderInfo hdr; GetBitContext gbc; - init_get_bits(&gbc, ((uint8_t *)&tmp)+8-AC3_HEADER_SIZE, 54); + init_get_bits(&gbc, tmp.u8+8-AC3_HEADER_SIZE, 54); err = ff_ac3_parse_header(&gbc, &hdr); if(err < 0) -- cgit v1.2.3