[FFmpeg-devel] [PATCH 7/8] Reject block size changes in the shorten decoder.

Justin Ruggles justin.ruggles at gmail.com
Fri Sep 30 00:24:35 CEST 2011


On 09/29/2011 06:05 PM, fenrir at elivagar.org wrote:

> From: Laurent Aimar <fenrir at videolan.org>
> 
> ---
>  libavcodec/shorten.c |    9 +++++++--
>  1 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/libavcodec/shorten.c b/libavcodec/shorten.c
> index b39fcbd..966584d 100644
> --- a/libavcodec/shorten.c
> +++ b/libavcodec/shorten.c
> @@ -482,9 +482,14 @@ static int shorten_decode_frame(AVCodecContext *avctx,
>              case FN_BITSHIFT:
>                  s->bitshift = get_ur_golomb_shorten(&s->gb, BITSHIFTSIZE);
>                  break;
> -            case FN_BLOCKSIZE:
> -                s->blocksize = get_uint(s, av_log2(s->blocksize));
> +            case FN_BLOCKSIZE: {
> +                int blocksize = get_uint(s, av_log2(s->blocksize));
> +                if (blocksize != s->blocksize) {
> +                    av_log(avctx, AV_LOG_ERROR, "block size changes are not supported\n");
> +                    return AVERROR_PATCHWELCOME;
> +                }
>                  break;
> +            }
>              case FN_QUIT:
>                  *data_size = 0;
>                  return buf_size;


The last frame can use a different blocksize.

-Justin


More information about the ffmpeg-devel mailing list