From 6ab8ece7180097c1741d854599b6daf78e709a1e Mon Sep 17 00:00:00 2001 From: reimar Date: Sun, 1 Jun 2008 16:40:56 +0000 Subject: [PATCH] Properly free memory allocate by liba52. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26955 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/ad_hwac3.c | 3 +++ libmpcodecs/ad_liba52.c | 1 + 2 files changed, 4 insertions(+) diff --git a/libmpcodecs/ad_hwac3.c b/libmpcodecs/ad_hwac3.c index 1ac2a5155e..dba0d98403 100644 --- a/libmpcodecs/ad_hwac3.c +++ b/libmpcodecs/ad_hwac3.c @@ -128,14 +128,17 @@ static int init(sh_audio_t *sh_audio) } if(ac3dts_fillbuff(sh_audio) < 0) { + a52_free(a52_state); mp_msg(MSGT_DECAUDIO, MSGL_ERR, "AC3/DTS sync failed\n"); return 0; } + sh_audio->context = a52_state; return 1; } static void uninit(sh_audio_t *sh) { + a52_free(sh->context); } static int control(sh_audio_t *sh,int cmd,void* arg, ...) diff --git a/libmpcodecs/ad_liba52.c b/libmpcodecs/ad_liba52.c index 604ed71c48..8c32c81319 100644 --- a/libmpcodecs/ad_liba52.c +++ b/libmpcodecs/ad_liba52.c @@ -253,6 +253,7 @@ while(sh_audio->channels>0){ static void uninit(sh_audio_t *sh) { + a52_free(a52_state); } static int control(sh_audio_t *sh,int cmd,void* arg, ...)