diff --git a/libavformat/westwood_audenc.c b/libavformat/westwood_audenc.c index 4ec905b088..490f2ee260 100644 --- a/libavformat/westwood_audenc.c +++ b/libavformat/westwood_audenc.c @@ -103,7 +103,8 @@ static int wsaud_write_packet(AVFormatContext *ctx, AVPacket *pkt) AVIOContext *pb = ctx->pb; AUDMuxContext *a = ctx->priv_data; - av_assert1(pkt->size < UINT16_MAX && (pkt->size * 4) < UINT16_MAX); + if (pkt->size > UINT16_MAX / 4) + return AVERROR_INVALIDDATA; /* Assumes ADPCM since this muxer doesn't support SND1 or PCM format. */ avio_wl16(pb, pkt->size); avio_wl16(pb, pkt->size * 4);