Author: jimtabor Date: Fri Apr 4 14:40:51 2014 New Revision: 62609
URL: http://svn.reactos.org/svn/reactos?rev=62609&view=rev Log: [User32] - Patch by Javier Cantero : Fix side effect in SubtractRect(). - Sync port from wine with modifications
Modified: trunk/reactos/win32ss/user/user32/windows/rect.c
Modified: trunk/reactos/win32ss/user/user32/windows/rect.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/user32/windows... ============================================================================== --- trunk/reactos/win32ss/user/user32/windows/rect.c [iso-8859-1] (original) +++ trunk/reactos/win32ss/user/user32/windows/rect.c [iso-8859-1] Fri Apr 4 14:40:51 2014 @@ -193,16 +193,20 @@ if(lprcDst == NULL || lprcSrc1 == NULL || lprcSrc2 == NULL) return(FALSE);
- CopyRect(lprcDst, lprcSrc1); - if(!IntersectRect(&tempRect, lprcSrc1, lprcSrc2)) + { + *lprcDst = *lprcSrc1; return(TRUE); - - if (EqualRect(&tempRect, lprcDst)) + } + + if (EqualRect(&tempRect, lprcSrc1)) { SetRectEmpty(lprcDst); return FALSE; } + + *lprcDst = *lprcSrc1; + if(lprcDst->top == tempRect.top && lprcDst->bottom == tempRect.bottom) { if(lprcDst->left == tempRect.left)