]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
transcode: free extradata from context structures
authorJaroslav Kysela <perex@perex.cz>
Mon, 20 Oct 2014 14:45:43 +0000 (16:45 +0200)
committerJaroslav Kysela <perex@perex.cz>
Mon, 20 Oct 2014 14:45:43 +0000 (16:45 +0200)
src/plumbing/transcoding.c

index fdbf58daddcbac98670eced43595fa6b1d642a14..0566f3bd48adf8abb11fc0fd3c6a51a5f59b87c6 100644 (file)
@@ -1239,6 +1239,8 @@ transcoder_destroy_subtitle(transcoder_t *t, transcoder_stream_t *ts)
   subtitle_stream_t *ss = (subtitle_stream_t*)ts;
 
   if(ss->sub_ictx) {
+    av_freep(&ss->sub_ictx->extradata);
+    ss->sub_ictx->extradata_size = 0;
     avcodec_close(ss->sub_ictx);
     av_free(ss->sub_ictx);
   }
@@ -1318,6 +1320,8 @@ transcoder_destroy_audio(transcoder_t *t, transcoder_stream_t *ts)
   audio_stream_t *as = (audio_stream_t*)ts;
 
   if(as->aud_ictx) {
+    av_freep(&as->aud_ictx->extradata);
+    as->aud_ictx->extradata_size = 0;
     avcodec_close(as->aud_ictx);
     av_free(as->aud_ictx);
   }
@@ -1420,6 +1424,8 @@ transcoder_destroy_video(transcoder_t *t, transcoder_stream_t *ts)
   video_stream_t *vs = (video_stream_t*)ts;
 
   if(vs->vid_ictx) {
+    av_freep(&vs->vid_ictx->extradata);
+    vs->vid_ictx->extradata_size = 0;
     avcodec_close(vs->vid_ictx);
     av_free(vs->vid_ictx);
   }