# HG changeset patch # User ramiro # Date 1279812622 0 # Node ID 74360873ab4d8ff609000f386eecb4673bbd137c # Parent 013a496467b9e5d2f43b60bbb586a7c87c069ddd 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. diff -r 013a496467b9 -r 74360873ab4d libswscale/swscale-test.c --- a/libswscale/swscale-test.c Thu Jul 22 08:52:41 2010 +0000 +++ b/libswscale/swscale-test.c Thu Jul 22 15:30:22 2010 +0000 @@ -106,8 +106,10 @@ * 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");