This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit e3f2e92f14449ea500462a4acf35da7ab5ca7511 Author: Rainbaby <[email protected]> AuthorDate: Fri Aug 28 16:18:07 2026 +0900 Commit: Peter Ross <[email protected]> CommitDate: Mon Nov 2 22:18:06 2026 +0000 avcodec/cavsdec: clear the residual after a failed dequant dequant() writes each coefficient as it goes and only then rejects a position past the end, so a failed block left its coefficients in h->block for the next block to add through the inverse transform. Signed-off-by: Rainbaby <[email protected]> --- libavcodec/cavsdec.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/libavcodec/cavsdec.c b/libavcodec/cavsdec.c index 73212305c0..9b236f519d 100644 --- a/libavcodec/cavsdec.c +++ b/libavcodec/cavsdec.c @@ -587,12 +587,13 @@ static int decode_residual_block(AVSContext *h, GetBitContext *gb, level_buf[i] = level; run_buf[i] = run; } - if ((ret = dequant(h, level_buf, run_buf, block, dequant_mul[qp], - dequant_shift[qp], i)) < 0) - return ret; - h->cdsp.cavs_idct8_add(dst, block, stride); + ret = dequant(h, level_buf, run_buf, block, dequant_mul[qp], + dequant_shift[qp], i); + if (ret >= 0) + h->cdsp.cavs_idct8_add(dst, block, stride); + /* dequant() can write before it fails, so always clear the block */ h->bdsp.clear_block(block); - return 0; + return ret; } -- To stop receiving notification emails like this one, please contact [email protected]. _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
