Index: libavcodec/utils.c |
diff --git a/libavcodec/utils.c b/libavcodec/utils.c |
index 74206720ca607ac0d8317e20d45b04de908ac2e4..b7f2306a0945481de0ff2a72c6d8540d0077cf89 100644 |
--- a/libavcodec/utils.c |
+++ b/libavcodec/utils.c |
@@ -886,6 +886,8 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, AVCodec *codec, AVD |
if(avctx->codec->init && !(avctx->active_thread_type&FF_THREAD_FRAME)){ |
ret = avctx->codec->init(avctx); |
if (ret < 0) { |
+ if(avctx->codec->close) |
+ avctx->codec->close(avctx); |
goto free_and_end; |
} |
} |