summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-11-06 15:45:55 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-11-06 15:45:55 +0000
commitc6b1e6880b39160b1a37ab0b4fc0c3ca29ff7367 (patch)
tree39b9fce14d90aeeaaeb23e0d5011a37d20944377 /libmpcodecs
parent87e2b02f7ab91fe5855d5010e5280226f3627bc6 (diff)
downloadmpv-c6b1e6880b39160b1a37ab0b4fc0c3ca29ff7367.tar.bz2
mpv-c6b1e6880b39160b1a37ab0b4fc0c3ca29ff7367.tar.xz
Only call avcodec_close if the open succeeded before, otherwise avcodec_close
will crash (happens e.g. when encoding ends before any frames were actually encoded, e.g. when an MPEG file was cut down to much so it no longer contains a full video frame). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29835 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/ve_lavc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libmpcodecs/ve_lavc.c b/libmpcodecs/ve_lavc.c
index 66b6d100e4..e2ad55d0e0 100644
--- a/libmpcodecs/ve_lavc.c
+++ b/libmpcodecs/ve_lavc.c
@@ -911,7 +911,8 @@ static void uninit(struct vf_instance_s* vf){
av_freep(&lavc_venc_context->intra_matrix);
av_freep(&lavc_venc_context->inter_matrix);
- avcodec_close(lavc_venc_context);
+ if (lavc_venc_context->codec)
+ avcodec_close(lavc_venc_context);
if(stats_file) fclose(stats_file);