changeset 9080:574481826df3 libavcodec

SVQ3: Fix decoding with A32_BITSTREAM_READER svq3_decode_slice_header() modifies the buffer used by the bitstream reader. Some of the bitstream readers cache a few bytes of data, which must be flushed after such a modification. Calling skip_bits_long(gb, 0) achieves this.
author mru
date Sun, 01 Mar 2009 12:11:07 +0000
parents 37dd457573a4
children 06fd12c6b7e6
files svq3.c
diffstat 1 files changed, 1 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/svq3.c	Sun Mar 01 12:11:02 2009 +0000
+++ b/svq3.c	Sun Mar 01 12:11:07 2009 +0000
@@ -724,6 +724,7 @@
             memcpy((uint8_t *) &s->gb.buffer[get_bits_count(&s->gb) >> 3],
                    &s->gb.buffer[s->gb.size_in_bits >> 3], (length - 1));
         }
+        skip_bits_long(&s->gb, 0);
     }
 
     if ((i = svq3_get_ue_golomb(&s->gb)) == INVALID_VLC || i >= 3){