[FFmpeg-cvslog] avcodec/iff: Use unsigned to avoid compiler warning
Andreas Rheinhardt
git at videolan.org
Thu Sep 15 22:33:48 EEST 2022
ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Mon Jul 11 20:52:48 2022 +0200| [4cd1d3e3b7e7412818553ae84e04ae3e077b680f] | committer: Andreas Rheinhardt
avcodec/iff: Use unsigned to avoid compiler warning
GCC 12 apparently believes that negative palette sizes are
possible (they are not, as this has already been checked during
init) and therefore emits a -Wstringop-overflow= for the memcpy.
Using unsigned avoids this.
(To be honest, there might be a compiler bug involved.)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4cd1d3e3b7e7412818553ae84e04ae3e077b680f
---
libavcodec/iff.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/libavcodec/iff.c b/libavcodec/iff.c
index 4910d2f859..e02d2e77e5 100644
--- a/libavcodec/iff.c
+++ b/libavcodec/iff.c
@@ -151,9 +151,10 @@ static av_always_inline uint32_t gray2rgb(const uint32_t x) {
static int cmap_read_palette(AVCodecContext *avctx, uint32_t *pal)
{
IffContext *s = avctx->priv_data;
- int count, i;
+ unsigned count, i;
const uint8_t *const palette = avctx->extradata + AV_RB16(avctx->extradata);
- int palette_size = avctx->extradata_size - AV_RB16(avctx->extradata);
+ /* extract_header() already checked that the RHS is >= 0. */
+ unsigned palette_size = avctx->extradata_size - AV_RB16(avctx->extradata);
if (avctx->bits_per_coded_sample > 8) {
av_log(avctx, AV_LOG_ERROR, "bits_per_coded_sample > 8 not supported\n");
More information about the ffmpeg-cvslog
mailing list