avfilter/avf_showwaves: Check history_nb_samples

Fixes: out of array access
Fixes: tickets/10756/poc18ffmpeg

Discovered by Zeng Yunxiang
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2023-12-30 02:39:58 +01:00
parent 56c5930ec3
commit 08bd2cbfeb
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64

View File

@ -440,6 +440,8 @@ static int config_output(AVFilterLink *outlink)
showwaves->history_nb_samples = av_rescale(showwaves->w * nb_channels * 2,
showwaves->n.num, showwaves->n.den);
if (showwaves->history_nb_samples <= 0)
return AVERROR(EINVAL);
showwaves->history = av_calloc(showwaves->history_nb_samples,
sizeof(*showwaves->history));
if (!showwaves->history)