diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 7740147bb6..c9ae19b8d8 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -1292,6 +1292,10 @@ free_and_end: (avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP)) avctx->codec->close(avctx); + if (avctx->priv_data && avctx->codec && avctx->codec->priv_class) + av_opt_free(avctx->priv_data); + av_opt_free(avctx); + av_dict_free(&tmp); av_freep(&avctx->priv_data); if (avctx->internal) {