avcodec: Free the default avoptions on init failure
[ffmpeg.git] / libavcodec / utils.c
index 7740147..c9ae19b 100644 (file)
@@ -1292,6 +1292,10 @@ free_and_end:
         (avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP))
         avctx->codec->close(avctx);
 
         (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) {
     av_dict_free(&tmp);
     av_freep(&avctx->priv_data);
     if (avctx->internal) {