This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch release/8.1 in repository ffmpeg.
commit 852b0552f072826723749db6891928d839f536d8 Author: Pavel Kohout <[email protected]> AuthorDate: Mon Jun 29 23:46:16 2026 +0200 Commit: Adam Shaver <[email protected]> CommitDate: Mon Aug 3 18:38:53 2026 +0000 avcodec/adx: sync decoder channel state on NEW_EXTRADATA Fixes: out of array access Fixes: heaNtmHvklpe Fixes: 92396cee602320c714713ca2d93b53684ad57000 (avformat: add CRI AAX demuxer) Found-by: Pavel Kohout (Aisle Research) Signed-off-by: Michael Niedermayer <[email protected]> (cherry picked from commit 1836ef96846937a6cc2443698a693104f5c0b21e) Signed-off-by: Michael Niedermayer <[email protected]> (cherry picked from commit c10e7f5dc12367d0dfcc52983d427c6766425fa8) Signed-off-by: Adam Shaver <[email protected]> --- libavcodec/adxdec.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavcodec/adxdec.c b/libavcodec/adxdec.c index 019fc1a90d..a79ae430aa 100644 --- a/libavcodec/adxdec.c +++ b/libavcodec/adxdec.c @@ -173,6 +173,7 @@ static int adx_decode_frame(AVCodecContext *avctx, AVFrame *frame, new_extradata = av_packet_get_side_data(avpkt, AV_PKT_DATA_NEW_EXTRADATA, &new_extradata_size); if (new_extradata && new_extradata_size > 0) { + int old_channels = c->channels; int header_size; if ((ret = adx_decode_header(avctx, new_extradata, new_extradata_size, &header_size, @@ -181,6 +182,10 @@ static int adx_decode_frame(AVCodecContext *avctx, AVFrame *frame, return AVERROR_INVALIDDATA; } + c->channels = avctx->ch_layout.nb_channels; + c->header_parsed = 1; + if (old_channels != c->channels) + memset(c->prev, 0, sizeof(c->prev)); c->eof = 0; } _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
