Don't call internal function which checks parameters since our parameter is kernel mode.
Modified: trunk/reactos/subsys/win32k/ntuser/painting.c

Modified: trunk/reactos/subsys/win32k/ntuser/painting.c
--- trunk/reactos/subsys/win32k/ntuser/painting.c	2005-05-02 11:03:54 UTC (rev 14944)
+++ trunk/reactos/subsys/win32k/ntuser/painting.c	2005-05-02 11:38:48 UTC (rev 14945)
@@ -1211,16 +1211,18 @@
       {
          int i;
          RECT r, dummy;
-         POINT ClientOrigin;
+         PWINDOW_OBJECT WindowObject;
 
          for (i = 0; List[i]; i++)
          {
             NtUserGetWindowRect(List[i], &r);
-            IntGetClientOrigin(hWnd, &ClientOrigin);
-            r.left -= ClientOrigin.x;
-            r.top -= ClientOrigin.y;
-            r.right -= ClientOrigin.x;
-            r.bottom -= ClientOrigin.y;
+            WindowObject = IntGetWindowObject((hWnd ? hWnd : IntGetDesktopWindow()));
+            if (!WindowObject) continue;
+            r.left -= WindowObject->ClientRect.top;
+            r.top -= WindowObject->ClientRect.top;
+            r.right -= WindowObject->ClientRect.left;
+            r.bottom -= WindowObject->ClientRect.top;
+            IntReleaseWindowObject(WindowObject);
             if (! UnsafeRect || IntGdiIntersectRect(&dummy, &r, &rc))
                WinPosSetWindowPos(List[i], 0, r.left + dx, r.top + dy, 0, 0,
                                   SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE |