X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavfilter%2Fsplit.c;h=8b260a9ba3371b555fb0040be00e47e12a3bc270;hb=06ed3768c88cce44ba157ec81676acf96e50a61a;hp=b85a22135301c197f81e2ccfc6f25f38ee22b431;hpb=3757f8f2f6de1e3e8e553496211c213b8b894c70;p=ffmpeg diff --git a/libavfilter/split.c b/libavfilter/split.c index b85a2213530..8b260a9ba33 100644 --- a/libavfilter/split.c +++ b/libavfilter/split.c @@ -47,7 +47,7 @@ typedef struct SplitContext { static av_cold int split_init(AVFilterContext *ctx) { SplitContext *s = ctx->priv; - int i; + int i, ret; for (i = 0; i < s->nb_outputs; i++) { char name[32]; @@ -59,7 +59,10 @@ static av_cold int split_init(AVFilterContext *ctx) if (!pad.name) return AVERROR(ENOMEM); - ff_insert_outpad(ctx, i, &pad); + if ((ret = ff_insert_outpad(ctx, i, &pad)) < 0) { + av_freep(&pad.name); + return ret; + } } return 0;