X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fbgmc.c;h=2d59aa37adb35f1d1b14ac331682b15c1c46cd4b;hb=87b7e141a6fda7f450aff4560b776d546af313ed;hp=1a6817b73f7b3fb895c40d9a24a3902f0513fcc2;hpb=ce47f1589e9f5a6cf8372a269bdd862ff0cc3f91;p=ffmpeg diff --git a/libavcodec/bgmc.c b/libavcodec/bgmc.c index 1a6817b73f7..2d59aa37adb 100644 --- a/libavcodec/bgmc.c +++ b/libavcodec/bgmc.c @@ -485,12 +485,17 @@ av_cold void ff_bgmc_end(uint8_t **cf_lut, int **cf_lut_status) /** Initialize decoding and reads the first value */ -void ff_bgmc_decode_init(GetBitContext *gb, unsigned int *h, +int ff_bgmc_decode_init(GetBitContext *gb, unsigned int *h, unsigned int *l, unsigned int *v) { + if (get_bits_left(gb) < VALUE_BITS) + return AVERROR_INVALIDDATA; + *h = TOP_VALUE; *l = 0; *v = get_bits_long(gb, VALUE_BITS); + + return 0; }