fixed NtUserClipCursor()

svn path=/trunk/; revision=6113
This commit is contained in:
Thomas Bluemel 2003-09-21 16:00:24 +00:00
parent 87768e6cca
commit a41feef44a

View file

@ -237,8 +237,8 @@ NtUserClipCursor(
PWINSTATION_OBJECT WinStaObject;
PSYSTEM_CURSORINFO CurInfo;
PWINDOW_OBJECT DesktopWindow;
RECT Rect;
PWINDOW_OBJECT DesktopWindow = NULL;
NTSTATUS Status = ValidateWindowStationHandle(PROCESS_WINDOW_STATION(),
KernelMode,
@ -260,12 +260,12 @@ NtUserClipCursor(
}
CurInfo = &WinStaObject->SystemCursor;
if(UnsafeRect)
{
if((Rect.right > Rect.left) &&
(Rect.bottom > Rect.top))
{
if(WinStaObject->ActiveDesktop)
DesktopWindow = IntGetWindowObject(WinStaObject->ActiveDesktop->DesktopWindow);
if((Rect.right > Rect.left) && (Rect.bottom > Rect.top)
&& DesktopWindow)
{
CurInfo->CursorClipInfo.IsClipped = TRUE;
CurInfo->CursorClipInfo.Left = max(Rect.left, DesktopWindow->WindowRect.left);
CurInfo->CursorClipInfo.Top = max(Rect.top, DesktopWindow->WindowRect.top);
@ -275,7 +275,6 @@ NtUserClipCursor(
MouseMoveCursor(CurInfo->x, CurInfo->y);
}
}
else
WinStaObject->SystemCursor.CursorClipInfo.IsClipped = FALSE;