From 9ae4923673f76d9673d662b32c33134123ff335d Mon Sep 17 00:00:00 2001 From: diego Date: Wed, 20 Feb 2008 08:24:26 +0000 Subject: vf_sab mirrors coefficients past the edge of the picture instead of cropping: if (iy<0) iy= -iy; if(iy>=h) iy= h-iy-1; This produces -1,-2,-3... as it goes further past the end of an image, which crashes. Change this to h-1,h-2,h-3.. to avoid the crash. patch by Alexander Strange, astrange ithinksw com git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26038 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/vf_sab.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libmpcodecs') diff --git a/libmpcodecs/vf_sab.c b/libmpcodecs/vf_sab.c index 5ac3ffa827..f9e624a1d0 100644 --- a/libmpcodecs/vf_sab.c +++ b/libmpcodecs/vf_sab.c @@ -203,7 +203,7 @@ if((x/32)&1){ int dx; int iy= y+dy - radius; if (iy<0) iy= -iy; - else if(iy>=h) iy= h-iy-1; + else if(iy>=h) iy= h+h-iy-1; for(dx=0; dx=h) iy= h-iy-1; + else if(iy>=h) iy= h+h-iy-1; for(dx=0; dx=w) ix= w-ix-1; + else if(ix>=w) ix= w+w-ix-1; factor= f.colorDiffCoeff[256+preVal - f.preFilterBuf[ix + iy*f.preFilterStride] ] *f.distCoeff[dx + dy*f.distStride]; -- cgit v1.2.3