[SCM] libav/experimental: Fix for memleak in dv.c patch by (Burkhard Plaum; plaum, ipf uni-stuttgart de)

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:44:57 UTC 2013


The following commit has been merged in the experimental branch:
commit 5b2bf9434078d0a57482658d82a26c3b2a13493d
Author: Burkhard Plaum <plaum at ipf.uni-stuttgart.de>
Date:   Fri Aug 26 15:41:28 2005 +0000

    Fix for memleak in dv.c patch by (Burkhard Plaum; plaum, ipf uni-stuttgart de)
    
    Originally committed as revision 4539 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/dv.c b/libavcodec/dv.c
index d2739d3..1cfdae6 100644
--- a/libavcodec/dv.c
+++ b/libavcodec/dv.c
@@ -109,14 +109,13 @@ static int dvvideo_init(AVCodecContext *avctx)
 
         done = 1;
 
-        dv_vlc_map = av_mallocz(DV_VLC_MAP_LEV_SIZE*DV_VLC_MAP_RUN_SIZE*sizeof(struct dv_vlc_pair));
+        dv_vlc_map = av_mallocz_static(DV_VLC_MAP_LEV_SIZE*DV_VLC_MAP_RUN_SIZE*sizeof(struct dv_vlc_pair));
 	if (!dv_vlc_map)
 	    return -ENOMEM;
 
 	/* dv_anchor lets each thread know its Id */
 	dv_anchor = av_malloc(12*27*sizeof(void*));
 	if (!dv_anchor) {
-	    av_free(dv_vlc_map);
 	    return -ENOMEM;
 	}
 	for (i=0; i<12*27; i++)
@@ -149,7 +148,6 @@ static int dvvideo_init(AVCodecContext *avctx)
         dv_rl_vlc = av_malloc(dv_vlc.table_size * sizeof(RL_VLC_ELEM));
 	if (!dv_rl_vlc) {
 	    av_free(dv_anchor);
-	    av_free(dv_vlc_map);
 	    return -ENOMEM;
 	}
         for(i = 0; i < dv_vlc.table_size; i++){

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list