Op di 5 apr. 2022 om 15:37 schreef Martijn van Beurden <[email protected]>: > > --- > libavcodec/flacdec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/flacdec.c b/libavcodec/flacdec.c > index dd6026f9de..cb32d7cae8 100644 > --- a/libavcodec/flacdec.c > +++ b/libavcodec/flacdec.c > @@ -260,7 +260,7 @@ static int decode_residuals(FLACContext *s, int32_t > *decoded, int pred_order) > for (; i < samples; i++) > *decoded++ = get_sbits_long(&gb, tmp); > } else { > - int real_limit = tmp ? (INT_MAX >> tmp) + 2 : INT_MAX; > + int real_limit = (tmp > 1) ? (INT_MAX >> (tmp - 1)) + 2 : > INT_MAX; > for (; i < samples; i++) { > int v = get_sr_golomb_flac(&gb, tmp, real_limit, 1); > if (v == 0x80000000){ > -- > 2.30.2 >
A file needing this patch to decode properly can be found here: https://github.com/ktmf01/flac-test-files/blob/main/subset/63%20-%20predictor%20overflow%20check%2C%2024-bit.flac Kind regards, Martijn van Beurden _______________________________________________ ffmpeg-devel mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
