gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r7506 - in Extractor/src/plugins/thumbnailffmpeg: . ffmpeg/


From: gnunet
Subject: [GNUnet-SVN] r7506 - in Extractor/src/plugins/thumbnailffmpeg: . ffmpeg/libswscale
Date: Tue, 22 Jul 2008 00:26:37 -0600 (MDT)

Author: holindho
Date: 2008-07-22 00:26:37 -0600 (Tue, 22 Jul 2008)
New Revision: 7506

Modified:
   Extractor/src/plugins/thumbnailffmpeg/README
   Extractor/src/plugins/thumbnailffmpeg/ffmpeg/libswscale/swscale.c
Log:
ffmpeg: sync to libswscale r27332; upstream fixed memleak


Modified: Extractor/src/plugins/thumbnailffmpeg/README
===================================================================
--- Extractor/src/plugins/thumbnailffmpeg/README        2008-07-22 01:17:16 UTC 
(rev 7505)
+++ Extractor/src/plugins/thumbnailffmpeg/README        2008-07-22 06:26:37 UTC 
(rev 7506)
@@ -12,7 +12,7 @@
 svn export -r 27100 svn://svn.mplayerhq.hu/mplayer/trunk/libswscale 
ffmpeg/libswscale
 sync with ffmpeg:
 FFREV=14311
-SWSREV=27330
+SWSREV=27332
 cd /tmp
 svn co -r $FFREV --ignore-externals svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
 svn co -r $SWSREV svn://svn.mplayerhq.hu/mplayer/trunk/libswscale 
ffmpeg/libswscale

Modified: Extractor/src/plugins/thumbnailffmpeg/ffmpeg/libswscale/swscale.c
===================================================================
--- Extractor/src/plugins/thumbnailffmpeg/ffmpeg/libswscale/swscale.c   
2008-07-22 01:17:16 UTC (rev 7505)
+++ Extractor/src/plugins/thumbnailffmpeg/ffmpeg/libswscale/swscale.c   
2008-07-22 06:26:37 UTC (rev 7506)
@@ -932,6 +932,7 @@
     int minFilterSize;
     double *filter=NULL;
     double *filter2=NULL;
+    int ret= -1;
 #if defined(ARCH_X86)
     if (flags & SWS_CPU_CAPS_MMX)
         asm volatile("emms\n\t"::: "memory"); //FIXME this should not be 
required but it IS (even for non-MMX versions)
@@ -1144,7 +1145,7 @@
 
         if (outVec != &scaleFilter) sws_freeVec(outVec);
     }
-    av_free(filter); filter=NULL;
+    av_freep(&filter);
 
     /* try to reduce the filter-size (step1 find size and shift left) */
     // Assume it is near normalized (*0.5 or *2.0 is OK but * 0.001 is not).
@@ -1210,12 +1211,9 @@
     assert(minFilterSize > 0);
     filterSize= (minFilterSize +(filterAlign-1)) & (~(filterAlign-1));
     assert(filterSize > 0);
-    if (filterSize >= MAX_FILTER_SIZE)
-    {
-        av_free(filter2);
-        return -1;
-    }
     filter= av_malloc(filterSize*dstW*sizeof(double));
+    if (filterSize >= MAX_FILTER_SIZE || !filter)
+        goto error;
     *outFilterSize= filterSize;
 
     if (flags&SWS_PRINT_INFO)
@@ -1231,7 +1229,6 @@
             else               filter[i*filterSize + j]= filter2[i*filter2Size 
+ j];
         }
     }
-    av_free(filter2); filter2=NULL;
 
 
     //FIXME try to align filterpos if possible
@@ -1299,8 +1296,11 @@
         (*outFilter)[j + i]= (*outFilter)[j + i - (*outFilterSize)];
     }
 
+    ret=0;
+error:
     av_free(filter);
-    return 0;
+    av_free(filter2);
+    return ret;
 }
 
 #ifdef COMPILE_MMX2
@@ -2824,8 +2824,7 @@
 
 void sws_freeVec(SwsVector *a){
     if (!a) return;
-    av_free(a->coeff);
-    a->coeff=NULL;
+    av_freep(&a->coeff);
     a->length=0;
     av_free(a);
 }
@@ -2848,48 +2847,30 @@
     if (c->lumPixBuf)
     {
         for (i=0; i<c->vLumBufSize; i++)
-        {
-            av_free(c->lumPixBuf[i]);
-            c->lumPixBuf[i]=NULL;
-        }
-        av_free(c->lumPixBuf);
-        c->lumPixBuf=NULL;
+            av_freep(&c->lumPixBuf[i]);
+        av_freep(&c->lumPixBuf);
     }
 
     if (c->chrPixBuf)
     {
         for (i=0; i<c->vChrBufSize; i++)
-        {
-            av_free(c->chrPixBuf[i]);
-            c->chrPixBuf[i]=NULL;
-        }
-        av_free(c->chrPixBuf);
-        c->chrPixBuf=NULL;
+            av_freep(&c->chrPixBuf[i]);
+        av_freep(&c->chrPixBuf);
     }
 
-    av_free(c->vLumFilter);
-    c->vLumFilter = NULL;
-    av_free(c->vChrFilter);
-    c->vChrFilter = NULL;
-    av_free(c->hLumFilter);
-    c->hLumFilter = NULL;
-    av_free(c->hChrFilter);
-    c->hChrFilter = NULL;
+    av_freep(&c->vLumFilter);
+    av_freep(&c->vChrFilter);
+    av_freep(&c->hLumFilter);
+    av_freep(&c->hChrFilter);
 #ifdef HAVE_ALTIVEC
-    av_free(c->vYCoeffsBank);
-    c->vYCoeffsBank = NULL;
-    av_free(c->vCCoeffsBank);
-    c->vCCoeffsBank = NULL;
+    av_freep(&c->vYCoeffsBank);
+    av_freep(&c->vCCoeffsBank);
 #endif
 
-    av_free(c->vLumFilterPos);
-    c->vLumFilterPos = NULL;
-    av_free(c->vChrFilterPos);
-    c->vChrFilterPos = NULL;
-    av_free(c->hLumFilterPos);
-    c->hLumFilterPos = NULL;
-    av_free(c->hChrFilterPos);
-    c->hChrFilterPos = NULL;
+    av_freep(&c->vLumFilterPos);
+    av_freep(&c->vChrFilterPos);
+    av_freep(&c->hLumFilterPos);
+    av_freep(&c->hChrFilterPos);
 
 #if defined(ARCH_X86) && defined(CONFIG_GPL)
 #ifdef MAP_ANONYMOUS
@@ -2903,16 +2884,11 @@
     c->funnyUVCode=NULL;
 #endif /* defined(ARCH_X86) */
 
-    av_free(c->lumMmx2Filter);
-    c->lumMmx2Filter=NULL;
-    av_free(c->chrMmx2Filter);
-    c->chrMmx2Filter=NULL;
-    av_free(c->lumMmx2FilterPos);
-    c->lumMmx2FilterPos=NULL;
-    av_free(c->chrMmx2FilterPos);
-    c->chrMmx2FilterPos=NULL;
-    av_free(c->yuvTable);
-    c->yuvTable=NULL;
+    av_freep(&c->lumMmx2Filter);
+    av_freep(&c->chrMmx2Filter);
+    av_freep(&c->lumMmx2FilterPos);
+    av_freep(&c->chrMmx2FilterPos);
+    av_freep(&c->yuvTable);
 
     av_free(c);
 }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]