mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-24 19:59:46 +00:00
ffplay: always free buffersink_params in configure_video_filters
Fixes Coverity CID 733792. Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
09214f494b
commit
8cb740245d
13
ffplay.c
13
ffplay.c
@ -1714,31 +1714,32 @@ static int configure_video_filters(AVFilterGraph *graph, VideoState *is, const c
|
||||
avfilter_get_by_name("buffer"),
|
||||
"ffplay_buffer", buffersrc_args, NULL,
|
||||
graph)) < 0)
|
||||
return ret;
|
||||
goto fail;
|
||||
|
||||
buffersink_params->pixel_fmts = pix_fmts;
|
||||
ret = avfilter_graph_create_filter(&filt_out,
|
||||
avfilter_get_by_name("ffbuffersink"),
|
||||
"ffplay_buffersink", NULL, buffersink_params, graph);
|
||||
av_freep(&buffersink_params);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
goto fail;
|
||||
|
||||
/* SDL YUV code is not handling odd width/height for some driver
|
||||
* combinations, therefore we crop the picture to an even width/height. */
|
||||
if ((ret = avfilter_graph_create_filter(&filt_crop,
|
||||
avfilter_get_by_name("crop"),
|
||||
"ffplay_crop", "floor(in_w/2)*2:floor(in_h/2)*2", NULL, graph)) < 0)
|
||||
return ret;
|
||||
goto fail;
|
||||
if ((ret = avfilter_link(filt_crop, 0, filt_out, 0)) < 0)
|
||||
return ret;
|
||||
goto fail;
|
||||
|
||||
if ((ret = configure_filtergraph(graph, vfilters, filt_src, filt_crop)) < 0)
|
||||
return ret;
|
||||
goto fail;
|
||||
|
||||
is->in_video_filter = filt_src;
|
||||
is->out_video_filter = filt_out;
|
||||
|
||||
fail:
|
||||
av_freep(&buffersink_params);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user