You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
avcodec/evc_frame_merge_bsf: free EVCFMergeContext on flush and close
Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
@@ -60,6 +60,7 @@ static void evc_frame_merge_flush(AVBSFContext *bsf)
|
|||||||
{
|
{
|
||||||
EVCFMergeContext *ctx = bsf->priv_data;
|
EVCFMergeContext *ctx = bsf->priv_data;
|
||||||
|
|
||||||
|
ff_evc_parse_free(&ctx->parser_ctx);
|
||||||
av_packet_unref(ctx->in);
|
av_packet_unref(ctx->in);
|
||||||
ctx->au_buffer.data_size = 0;
|
ctx->au_buffer.data_size = 0;
|
||||||
}
|
}
|
||||||
@@ -129,7 +130,7 @@ static int evc_frame_merge_filter(AVBSFContext *bsf, AVPacket *out)
|
|||||||
err = AVERROR(EAGAIN);
|
err = AVERROR(EAGAIN);
|
||||||
|
|
||||||
if (err < 0 && err != AVERROR(EAGAIN))
|
if (err < 0 && err != AVERROR(EAGAIN))
|
||||||
evc_frame_merge_flush(bsf);
|
ctx->au_buffer.data_size = 0;
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@@ -154,6 +155,7 @@ static void evc_frame_merge_close(AVBSFContext *bsf)
|
|||||||
EVCFMergeContext *ctx = bsf->priv_data;
|
EVCFMergeContext *ctx = bsf->priv_data;
|
||||||
|
|
||||||
av_packet_free(&ctx->in);
|
av_packet_free(&ctx->in);
|
||||||
|
ff_evc_parse_free(&ctx->parser_ctx);
|
||||||
|
|
||||||
ctx->au_buffer.capacity = 0;
|
ctx->au_buffer.capacity = 0;
|
||||||
av_freep(&ctx->au_buffer.data);
|
av_freep(&ctx->au_buffer.data);
|
||||||
|
Reference in New Issue
Block a user