mirror of https://git.ffmpeg.org/ffmpeg.git
vf_select: add NULL-checks in uninit
Fix NULL pointer dereference in case of failed initialization. Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
This commit is contained in:
parent
43fab7aafc
commit
30ea0e47b5
|
@ -319,14 +319,18 @@ static av_cold void uninit(AVFilterContext *ctx)
|
||||||
AVFilterBufferRef *picref;
|
AVFilterBufferRef *picref;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
if (select->expr)
|
||||||
av_expr_free(select->expr);
|
av_expr_free(select->expr);
|
||||||
select->expr = NULL;
|
select->expr = NULL;
|
||||||
|
|
||||||
|
if (select->pending_frames) {
|
||||||
for (i = 0; i < av_fifo_size(select->pending_frames)/sizeof(picref); i++) {
|
for (i = 0; i < av_fifo_size(select->pending_frames)/sizeof(picref); i++) {
|
||||||
av_fifo_generic_read(select->pending_frames, &picref, sizeof(picref), NULL);
|
av_fifo_generic_read(select->pending_frames, &picref, sizeof(picref), NULL);
|
||||||
avfilter_unref_buffer(picref);
|
avfilter_unref_buffer(picref);
|
||||||
}
|
}
|
||||||
av_fifo_free(select->pending_frames);
|
av_fifo_free(select->pending_frames);
|
||||||
|
}
|
||||||
|
select->pending_frames = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
AVFilter avfilter_vf_select = {
|
AVFilter avfilter_vf_select = {
|
||||||
|
|
Loading…
Reference in New Issue