diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-03-31 16:58:49 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2013-05-17 20:30:17 +0200 |
commit | 1dd35611433c224e2231ed7ae26b5b560863a3cb (patch) | |
tree | eaabfe8f1de1a1e4f511ff8f12353a0819e8a04e /libavfilter | |
parent | c5ab6088ad7b0dac461fb6757b038f5260e638e5 (diff) | |
download | ffmpeg-1dd35611433c224e2231ed7ae26b5b560863a3cb.tar.gz |
vf_format: do not use the AVFilterFormats internals.
Use the formats.h API instead.
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/vf_format.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/libavfilter/vf_format.c b/libavfilter/vf_format.c index 7fcc7d6383..e1fcc238dc 100644 --- a/libavfilter/vf_format.c +++ b/libavfilter/vf_format.c @@ -83,15 +83,17 @@ static av_cold int init(AVFilterContext *ctx) static AVFilterFormats *make_format_list(FormatContext *s, int flag) { - AVFilterFormats *formats; + AVFilterFormats *formats = NULL; enum AVPixelFormat pix_fmt; - formats = av_mallocz(sizeof(AVFilterFormats)); - formats->formats = av_malloc(sizeof(enum AVPixelFormat) * AV_PIX_FMT_NB); - for (pix_fmt = 0; pix_fmt < AV_PIX_FMT_NB; pix_fmt++) - if (s->listed_pix_fmt_flags[pix_fmt] == flag) - formats->formats[formats->nb_formats++] = pix_fmt; + if (s->listed_pix_fmt_flags[pix_fmt] == flag) { + int ret = ff_add_format(&formats, pix_fmt); + if (ret < 0) { + ff_formats_unref(&formats); + return NULL; + } + } return formats; } |