Module: libav Branch: release/10 Commit: 1dcb68c02a55648facb82c0b2b6a1eb3dc18f988
Author: Andreas Cadhalpun <[email protected]> Committer: Reinhard Tartler <[email protected]> Date: Fri Apr 24 00:01:43 2015 +0200 alac: Reject rice_limit 0 if compression is used If in compression mode rice_limit = 0 leads to call `show_bits(gb, k)` in `decode_scalar` with k = 0. Request a sample in case it is valid and it should be accepted. Signed-off-by: Luca Barbato <[email protected]> CC: [email protected] (cherry picked from commit cb5324200ccdc693dd5b28dcd7d4b722fad83ea2) Signed-off-by: Reinhard Tartler <[email protected]> --- libavcodec/alac.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/alac.c b/libavcodec/alac.c index f972531..7c2b925 100644 --- a/libavcodec/alac.c +++ b/libavcodec/alac.c @@ -305,6 +305,12 @@ static int decode_element(AVCodecContext *avctx, AVFrame *frame, int ch_index, int lpc_quant[2]; int rice_history_mult[2]; + if (!alac->rice_limit) { + avpriv_request_sample(alac->avctx, + "Compression with rice limit 0"); + return AVERROR(ENOSYS); + } + decorr_shift = get_bits(&alac->gb, 8); decorr_left_weight = get_bits(&alac->gb, 8); _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
