[SCM] libav/experimental: memleak fix

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:38:52 UTC 2013


The following commit has been merged in the experimental branch:
commit 967be700506dce69b69aaa5c479b51db45a665f2
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Thu Jan 8 18:24:35 2004 +0000

    memleak fix
    
    Originally committed as revision 2676 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/error_resilience.c b/libavcodec/error_resilience.c
index ee3b281..db0c1f9 100644
--- a/libavcodec/error_resilience.c
+++ b/libavcodec/error_resilience.c
@@ -673,11 +673,16 @@ void ff_er_frame_end(MpegEncContext *s){
     
     if(s->current_picture.motion_val[0] == NULL){
         int size = (2 * s->mb_width + 2) * (2 * s->mb_height + 2);
+        Picture *pic= s->current_picture_ptr;
         
         av_log(s->avctx, AV_LOG_ERROR, "Warning MVs not available\n");
-        
-        s->current_picture.motion_val[0]= av_mallocz(size * 2 * sizeof(int16_t)); //FIXME
-        s->current_picture.motion_val[1]= av_mallocz(size * 2 * sizeof(int16_t));
+            
+        for(i=0; i<2; i++){
+            pic->motion_val_base[i]= av_mallocz((size+1) * 2 * sizeof(uint16_t)); //FIXME size
+            pic->motion_val[i]= pic->motion_val_base[i]+1;
+        }
+        pic->motion_subsample_log2= 3;
+        s->current_picture= *s->current_picture_ptr;
     }
     
     if(s->avctx->debug&FF_DEBUG_ER){

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list