[FFmpeg-cvslog] r31768 - trunk/libswscale/swscale-test.c

ramiro subversion
Thu Jul 22 17:30:22 CEST 2010


Author: ramiro
Date: Thu Jul 22 17:30:22 2010
New Revision: 31768

Log:
swscale-test: allocate more memory to prevent scalers from writing out of bounds

Some converters (ie. unscaled rgb24 -> argb) may write some bytes out of
bounds. Ideally the converters should be fixed, but in the meantime we allocate
more memory to prevent heap corruption.

Modified:
   trunk/libswscale/swscale-test.c

Modified: trunk/libswscale/swscale-test.c
==============================================================================
--- trunk/libswscale/swscale-test.c	Thu Jul 22 10:52:41 2010	(r31767)
+++ trunk/libswscale/swscale-test.c	Thu Jul 22 17:30:22 2010	(r31768)
@@ -106,8 +106,10 @@ static int doTest(uint8_t *ref[4], int r
          * prefer, as long as they're aligned enough for the architecture, and
          * they're freed appropriately (such as using av_free for buffers
          * allocated with av_malloc). */
-        src[i]= av_mallocz(srcStride[i]*srcH);
-        dst[i]= av_mallocz(dstStride[i]*dstH);
+        /* An extra 16 bytes is being allocated because some scalers may write
+         * out of bounds. */
+        src[i]= av_mallocz(srcStride[i]*srcH+16);
+        dst[i]= av_mallocz(dstStride[i]*dstH+16);
         out[i]= av_mallocz(refStride[i]*h);
         if (!src[i] || !dst[i] || !out[i]) {
             perror("Malloc");



More information about the ffmpeg-cvslog mailing list