On Sat, Oct 12, 2013 at 04:11:12AM +0200, Luca Barbato wrote:
> Invalidate it if not supported.
> 
> Sample-Id: 00000262-google
> Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
> CC: [email protected]
> ---
> 
> Not sure if it is really better, I prefer the former one.
> 
>  libavcodec/indeo4.c | 17 ++++++++++++-----
>  1 file changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/libavcodec/indeo4.c b/libavcodec/indeo4.c
> index 3c749a9..2a25972 100644
> --- a/libavcodec/indeo4.c
> +++ b/libavcodec/indeo4.c
> @@ -370,13 +370,15 @@ static int decode_band_hdr(IVI45DecContext *ctx, 
> IVIBandDesc *band,
>              band->scan = scan_index_to_tab[scan_indx];
> 
>              band->quant_mat = get_bits(&ctx->gb, 5);
> -            if (band->quant_mat == 31) {
> -                av_log(avctx, AV_LOG_ERROR, "Custom quant matrix 
> encountered!\n");
> -                return AVERROR_INVALIDDATA;
> -            }
>              if (band->quant_mat >= FF_ARRAY_ELEMS(quant_index_to_tab)) {
> -                avpriv_request_sample(avctx, "Quantization matrix %d",
> +
> +                if (band->quant_mat == 31)
> +                    av_log(avctx, AV_LOG_ERROR,
> +                           "Custom quant matrix encountered!\n");
> +                else
> +                    avpriv_request_sample(avctx, "Quantization matrix %d",
>                                        band->quant_mat);

this line needs to be reindented too

> +                band->quant_mat = -1;
>                  return AVERROR_INVALIDDATA;
>              }
>          } else {
> @@ -386,6 +388,11 @@ static int decode_band_hdr(IVI45DecContext *ctx, 
> IVIBandDesc *band,
>                         "inherited\n");
>                  return AVERROR_INVALIDDATA;
>              }
> +            if (band->quant_mat < 0) {
> +                av_log(avctx, AV_LOG_ERROR,
> +                       "Invalid quant_mat inherited\n"
> +                return AVERROR_INVALIDDATA;
> +            }
>          }
> 
>          /* decode block huffman codebook */
> --

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

Reply via email to