diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-04-07 22:43:38 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-04-10 03:20:53 +0200 |
commit | 7c109cb92381c4895a95cf706527c0d0ff656ee7 (patch) | |
tree | dab4d5cd0dabde009b60964d288e14e0db7b78eb /libavcodec/proresenc_kostya.c | |
parent | d7301f1b75c29349f048472622aea6edd3873443 (diff) | |
download | ffmpeg-7c109cb92381c4895a95cf706527c0d0ff656ee7.tar.gz |
avcodec/proresenc_kostya: Remove harmful check
The ProRes encoder allocates huge worst-case buffers just to be safe;
and for huge resolutions (8k in this case) these can be so big that the
number of bits does no longer fit into a (signed 32-bit) int; this means
that one must no longer use the parts of the PutBits API that deal with
bit counters. Yet proresenc_kostya did it, namely for a check about
whether we are already beyond the end. Yet this check is unnecessary
nowadays, because the PutBits API comes with automatic checks (with
a log message and a av_assert2() in put_bits() and an av_assert0() in
flush_put_bits()), so this is unnecessary. So simply remove the check.
Fixes ticket #9173.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/proresenc_kostya.c')
-rw-r--r-- | libavcodec/proresenc_kostya.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/libavcodec/proresenc_kostya.c b/libavcodec/proresenc_kostya.c index d8edd12f34..54fc6707a1 100644 --- a/libavcodec/proresenc_kostya.c +++ b/libavcodec/proresenc_kostya.c @@ -619,11 +619,6 @@ static int encode_slice(AVCodecContext *avctx, const AVFrame *pic, flush_put_bits(pb); sizes[i] = put_bytes_output(pb) - total_size; total_size = put_bytes_output(pb); - if (put_bits_left(pb) < 0) { - av_log(avctx, AV_LOG_ERROR, - "Underestimated required buffer size.\n"); - return AVERROR_BUG; - } } return total_size; } |