diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-21 17:40:38 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-07-21 17:40:38 +0200 |
commit | 39867f3e098ab304cd3bef0ace19d73617cdb817 (patch) | |
tree | 3f7ce3db55b92bf4b3c923df99bc003b92eb4d0c | |
parent | f2d7409c72563745d38bc986f28c06741194e6c5 (diff) | |
download | ffmpeg-streaming-39867f3e098ab304cd3bef0ace19d73617cdb817.zip ffmpeg-streaming-39867f3e098ab304cd3bef0ace19d73617cdb817.tar.gz |
avfilter/af_channelmap: Move ff_add_channel_layout() call to querry_format()
Avoids memleak if querry_formats is not called
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavfilter/af_channelmap.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libavfilter/af_channelmap.c b/libavfilter/af_channelmap.c index f8289cc..0693145 100644 --- a/libavfilter/af_channelmap.c +++ b/libavfilter/af_channelmap.c @@ -275,8 +275,6 @@ static av_cold int channelmap_init(AVFilterContext *ctx) return AVERROR(EINVAL); } - ff_add_channel_layout(&s->channel_layouts, s->output_layout); - if (mode == MAP_PAIR_INT_STR || mode == MAP_PAIR_STR_STR) { for (i = 0; i < s->nch; i++) { s->map[i].out_channel_idx = av_get_channel_layout_channel_index( @@ -299,6 +297,7 @@ static int channelmap_query_formats(AVFilterContext *ctx) if (!layouts) return AVERROR(ENOMEM); + ff_add_channel_layout(&s->channel_layouts, s->output_layout); ff_channel_layouts_ref(layouts, &ctx->inputs[0]->out_channel_layouts); ff_channel_layouts_ref(s->channel_layouts, &ctx->outputs[0]->in_channel_layouts); |