Mercurial > libavcodec.hg
changeset 3632:25ceb2cc950d libavcodec
make A32 reader align its ptr during init no matter what missaligned mess is given to it
author | michael |
---|---|
date | Sat, 26 Aug 2006 11:37:33 +0000 |
parents | 40f753fc46a4 |
children | f9660d3a9975 |
files | bitstream.h |
diffstat | 1 files changed, 4 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/bitstream.h Sat Aug 26 11:26:54 2006 +0000 +++ b/bitstream.h Sat Aug 26 11:37:33 2006 +0000 @@ -719,20 +719,16 @@ s->bit_count = 16; s->cache = 0; } -#elif defined A32_BITSTREAM_READER - s->buffer_ptr = (uint32_t*)buffer; - s->bit_count = 32; - s->cache0 = 0; - s->cache1 = 0; -#endif { OPEN_READER(re, s) UPDATE_CACHE(re, s) UPDATE_CACHE(re, s) CLOSE_READER(re, s) } -#ifdef A32_BITSTREAM_READER - s->cache1 = 0; +#elif defined A32_BITSTREAM_READER + s->buffer_ptr = (uint32_t*)((intptr_t)buffer&(~3)); + s->bit_count = 32 + 8*((intptr_t)buffer&3); + skip_bits_long(s, 0); #endif }