diff options
author | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-03-02 13:32:10 +0000 |
---|---|---|
committer | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-03-02 13:32:10 +0000 |
commit | 2c6494351977a3c79985c306f5d2af1f941487da (patch) | |
tree | 1b6c333ee69633183b8a26e7e6eb65c6a09e6315 /libswscale | |
parent | f1b8b8756ab3430c73a952b24e366ba6aedd4328 (diff) | |
download | mpv-2c6494351977a3c79985c306f5d2af1f941487da.tar.bz2 mpv-2c6494351977a3c79985c306f5d2af1f941487da.tar.xz |
copy src to prevent the user supplied argumet from being changed
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22410 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libswscale')
-rw-r--r-- | libswscale/swscale.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libswscale/swscale.c b/libswscale/swscale.c index 0c1f8f3f45..b33623a34c 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -2435,10 +2435,11 @@ int sws_scale(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY, // copy strides, so they can safely be modified if (c->sliceDir == 1) { + uint8_t* src2[4]= {src[0], src[1], src[2]}; // slices go from top to bottom int srcStride2[3]= {srcStride[0], srcStride[1], srcStride[2]}; int dstStride2[3]= {dstStride[0], dstStride[1], dstStride[2]}; - return c->swScale(c, src, srcStride2, srcSliceY, srcSliceH, dst, dstStride2); + return c->swScale(c, src2, srcStride2, srcSliceY, srcSliceH, dst, dstStride2); } else { // slices go from bottom to top => we flip the image internally uint8_t* src2[3]= {src[0] + (srcSliceH-1)*srcStride[0], |