1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

avcodec/cbs_h2645: Fix showing bits at the end in cbs_read_se_golomb()

Fixes: Assertion n>0 && n<=25 failed at libavcodec/get_bits.h:375
Fixes: 62618/clusterfuzz-testcase-minimized-ffmpeg_BSF_H264_REDUNDANT_PPS_fuzzer-5145745046765568

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2023-10-05 18:14:56 +02:00
parent 75eb698bdc
commit 61b86add52
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64

View File

@ -94,7 +94,7 @@ static int cbs_read_se_golomb(CodedBitstreamContext *ctx, GetBitContext *gbc,
max_length = FFMIN(get_bits_left(gbc), 32); max_length = FFMIN(get_bits_left(gbc), 32);
leading_bits = show_bits_long(gbc, max_length); leading_bits = max_length ? show_bits_long(gbc, max_length) : 0;
if (leading_bits == 0) { if (leading_bits == 0) {
if (max_length >= 32) { if (max_length >= 32) {
av_log(ctx->log_ctx, AV_LOG_ERROR, "Invalid se-golomb code at " av_log(ctx->log_ctx, AV_LOG_ERROR, "Invalid se-golomb code at "