On 2012-01-26 17:55:01 -0800, Alex Converse wrote:
> From: Thierry Foucu <[email protected]>
> 
> In some case, what left to read from ptr is smaller than EXTRABYTES.
> 
> Signed-off-by: Michael Niedermayer <[email protected]>
> (cherry picked from commit 10e9d1f76b4bec7a3c581ab7ac494f55acc6f24d)
> 
> Signed-off-by: Alex Converse <[email protected]>
> ---
>  libavcodec/mpegaudiodec.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c
> index a83b162..08b7fdb 100644
> --- a/libavcodec/mpegaudiodec.c
> +++ b/libavcodec/mpegaudiodec.c
> @@ -1383,7 +1383,8 @@ static int mp_decode_layer3(MPADecodeContext *s)
>          av_dlog(s->avctx, "seekback: %d\n", main_data_begin);
>      //av_log(NULL, AV_LOG_ERROR, "backstep:%d, lastbuf:%d\n", 
> main_data_begin, s->last_buf_size);
>  
> -        memcpy(s->last_buf + s->last_buf_size, ptr, EXTRABYTES);
> +        memcpy(s->last_buf + s->last_buf_size, ptr,
> +               FFMIN(EXTRABYTES, (s->gb.size_in_bits - 
> get_bits_count(&s->gb))>>3));

please use get_bits_left() and add spaces around '>>'

>          s->in_gb = s->gb;
>          init_get_bits(&s->gb, s->last_buf, s->last_buf_size*8);
>  #if !UNCHECKED_BITSTREAM_READER

janne
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to