diff --git a/libavfilter/af_asetnsamples.c b/libavfilter/af_asetnsamples.c index 30fabede2643acca20ffa3c3c432e517b4cbd77d..e8daec8d8f9a3f33c242b2a62a6367bcc950d36d 100644 --- a/libavfilter/af_asetnsamples.c +++ b/libavfilter/af_asetnsamples.c @@ -71,8 +71,10 @@ static int activate(AVFilterContext *ctx) return ff_filter_frame(outlink, frame); pad_frame = ff_get_audio_buffer(outlink, s->nb_out_samples); - if (!pad_frame) + if (!pad_frame) { + av_frame_free(&frame); return AVERROR(ENOMEM); + } av_samples_copy(pad_frame->extended_data, frame->extended_data, 0, 0, frame->nb_samples, frame->channels, frame->format);