X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fsanm.c;h=766ac68e71525de1fff55d64490b57a95cfde414;hb=4d54ecf4b8e897e993911ff51d53f52de88f29d5;hp=2a04706c2e6d26e2b9c79da15b15a39b22b30d9d;hpb=ef9fe5bedd1993700818a0ba1c195cd6f6668afe;p=ffmpeg diff --git a/libavcodec/sanm.c b/libavcodec/sanm.c index 2a04706c2e6..766ac68e715 100644 --- a/libavcodec/sanm.c +++ b/libavcodec/sanm.c @@ -284,7 +284,7 @@ static av_cold int decode_init(AVCodecContext *avctx) ctx->subversion = AV_RL16(avctx->extradata); for (i = 0; i < 256; i++) - ctx->pal[i] = 0xFF << 24 | AV_RL32(avctx->extradata + 2 + i * 4); + ctx->pal[i] = 0xFFU << 24 | AV_RL32(avctx->extradata + 2 + i * 4); } return 0; @@ -802,7 +802,7 @@ static int draw_glyph(SANMVideoContext *ctx, uint16_t *dst, int index, uint16_t uint16_t colors[2] = { fg_color, bg_color }; int x, y; - if (index > NGLYPHS) { + if (index >= NGLYPHS) { av_log(ctx->avctx, AV_LOG_ERROR, "ignoring nonexistent glyph #%u\n", index); return AVERROR_INVALIDDATA; } @@ -1172,7 +1172,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } for (i = 0; i < 256; i++) - ctx->pal[i] = 0xFF << 24 | bytestream2_get_be24u(&ctx->gb); + ctx->pal[i] = 0xFFU << 24 | bytestream2_get_be24u(&ctx->gb); break; case MKBETAG('F', 'O', 'B', 'J'): if (size < 16) @@ -1190,7 +1190,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int t = (ctx->pal[i] >> (16 - j * 8)) & 0xFF; tmp[j] = av_clip_uint8((t * 129 + ctx->delta_pal[i * 3 + j]) >> 7); } - ctx->pal[i] = 0xFF << 24 | AV_RB24(tmp); + ctx->pal[i] = 0xFFU << 24 | AV_RB24(tmp); } } else { if (size < 768 * 2 + 4) { @@ -1203,7 +1203,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, ctx->delta_pal[i] = bytestream2_get_le16u(&ctx->gb); if (size >= 768 * 5 + 4) { for (i = 0; i < 256; i++) - ctx->pal[i] = 0xFF << 24 | bytestream2_get_be24u(&ctx->gb); + ctx->pal[i] = 0xFFU << 24 | bytestream2_get_be24u(&ctx->gb); } else { memset(ctx->pal, 0, sizeof(ctx->pal)); }