Commit in reactos/subsys/win32k on MAIN
eng/copybits.c+10-101.21 -> 1.22
   /mouse.c+7-61.62 -> 1.63
   /transblt.c+3-31.11 -> 1.12
objects/dc.c+11-11.121 -> 1.122
+31-20
4 modified files
- Changed the check for determining if the drawing destination is the screen or not.  
- Fixed the order of calls to MouseSafetyOnDrawEnd in some functions.

reactos/subsys/win32k/eng
copybits.c 1.21 -> 1.22
diff -u -r1.21 -r1.22
--- copybits.c	24 Feb 2004 13:27:02 -0000	1.21
+++ copybits.c	5 Mar 2004 09:02:41 -0000	1.22
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: copybits.c,v 1.21 2004/02/24 13:27:02 weiden Exp $
+/* $Id: copybits.c,v 1.22 2004/03/05 09:02:41 hbirr Exp $
  *
  * COPYRIGHT:        See COPYING in the top level directory
  * PROJECT:          ReactOS kernel
@@ -48,7 +48,8 @@
 	    POINTL *SourcePoint)
 {
   BOOLEAN   ret;
-  SURFGDI   *DestGDI, *SourceGDI;
+  PSURFGDI DestGDI  = (PSURFGDI)AccessInternalObjectFromUserObject(Dest),
+           SourceGDI = (PSURFGDI)AccessInternalObjectFromUserObject(Source);
   BYTE      clippingType;
   RECTL     rclTmp;
   POINTL    ptlTmp;
@@ -79,8 +80,8 @@
         ret = DestGDI->CopyBits(Dest, Source, Clip, ColorTranslation, DestRect, SourcePoint);
         IntUnLockGDIDriver(DestGDI);
 
-        MouseSafetyOnDrawEnd(Source, SourceGDI);
         MouseSafetyOnDrawEnd(Dest, DestGDI);
+        MouseSafetyOnDrawEnd(Source, SourceGDI);
 
         return ret;
       }
@@ -97,8 +98,8 @@
         ret = SourceGDI->CopyBits(Dest, Source, Clip, ColorTranslation, DestRect, SourcePoint);
         IntUnLockGDIDriver(DestGDI);
 
-        MouseSafetyOnDrawEnd(Source, SourceGDI);
         MouseSafetyOnDrawEnd(Dest, DestGDI);
+        MouseSafetyOnDrawEnd(Source, SourceGDI);
 
         return ret;
       }
@@ -109,8 +110,8 @@
                     NULL, Clip, ColorTranslation, DestRect, SourcePoint,
                     NULL, NULL, NULL, 0);
 
-    MouseSafetyOnDrawEnd(Source, SourceGDI);
     MouseSafetyOnDrawEnd(Dest, DestGDI);
+    MouseSafetyOnDrawEnd(Source, SourceGDI);
 
     return ret;
   }
@@ -131,8 +132,8 @@
       case DC_TRIVIAL:
         DestGDI->DIB_BitBlt(Dest, Source, DestGDI, SourceGDI, DestRect, SourcePoint, NULL, NULL, ColorTranslation, SRCCOPY);
 
-        MouseSafetyOnDrawEnd(Source, SourceGDI);
         MouseSafetyOnDrawEnd(Dest, DestGDI);
+        MouseSafetyOnDrawEnd(Source, SourceGDI);
 
         return(TRUE);
 
@@ -145,8 +146,8 @@
 
         DestGDI->DIB_BitBlt(Dest, Source, DestGDI, SourceGDI, &rclTmp, &ptlTmp, NULL, NULL, ColorTranslation, SRCCOPY);
 
-        MouseSafetyOnDrawEnd(Source, SourceGDI);
         MouseSafetyOnDrawEnd(Dest, DestGDI);
+        MouseSafetyOnDrawEnd(Source, SourceGDI);
 
         return(TRUE);
 
@@ -178,15 +179,14 @@
 
           } while(EnumMore);
 
-          MouseSafetyOnDrawEnd(Source, SourceGDI);
-
           MouseSafetyOnDrawEnd(Dest, DestGDI);
+          MouseSafetyOnDrawEnd(Source, SourceGDI);
 
           return(TRUE);
     }
 
-  MouseSafetyOnDrawEnd(Source, SourceGDI);
   MouseSafetyOnDrawEnd(Dest, DestGDI);
+  MouseSafetyOnDrawEnd(Source, SourceGDI);
 
   return FALSE;
 }

reactos/subsys/win32k/eng
mouse.c 1.62 -> 1.63
diff -u -r1.62 -r1.63
--- mouse.c	24 Feb 2004 13:27:02 -0000	1.62
+++ mouse.c	5 Mar 2004 09:02:41 -0000	1.63
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: mouse.c,v 1.62 2004/02/24 13:27:02 weiden Exp $
+/* $Id: mouse.c,v 1.63 2004/03/05 09:02:41 hbirr Exp $
  *
  * PROJECT:          ReactOS kernel
  * PURPOSE:          Mouse
@@ -54,6 +54,10 @@
 /* FUNCTIONS *****************************************************************/
 
 BOOL FASTCALL
+IntIsPrimarSurface(PSURFGDI SurfGDI);
+
+
+BOOL FASTCALL
 IntCheckClipCursor(LONG *x, LONG *y, PSYSTEM_CURSORINFO CurInfo)
 {
   if(CurInfo->CursorClipInfo.IsClipped)
@@ -109,9 +113,7 @@
       ObDereferenceObject(InputWindowStation);
       return(FALSE);
     }
-
-
-  if (SurfObj->iType != STYPE_DEVICE || MouseEnabled == FALSE)
+  if (!IntIsPrimarSurface(SurfGDI) || MouseEnabled == FALSE)
     {
       ObDereferenceObject(InputWindowStation);
       return(FALSE);
@@ -199,8 +201,7 @@
   }
   
   MouseEnabled = CurInfo->Enabled && CurInfo->ShowingCursor;
-
-  if (SurfObj->iType != STYPE_DEVICE || MouseEnabled == FALSE)
+  if (!IntIsPrimarSurface(SurfGDI) || MouseEnabled == FALSE)
     {
       ExReleaseFastMutex(&CurInfo->CursorMutex);
       ObDereferenceObject(InputWindowStation);

reactos/subsys/win32k/eng
transblt.c 1.11 -> 1.12
diff -u -r1.11 -r1.12
--- transblt.c	24 Feb 2004 13:27:02 -0000	1.11
+++ transblt.c	5 Mar 2004 09:02:42 -0000	1.12
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: transblt.c,v 1.11 2004/02/24 13:27:02 weiden Exp $
+/* $Id: transblt.c,v 1.12 2004/03/05 09:02:42 hbirr Exp $
  * 
  * COPYRIGHT:        See COPYING in the top level directory
  * PROJECT:          ReactOS kernel
@@ -102,8 +102,8 @@
                                   TransparentColor, Reserved);
     IntUnLockGDIDriver(DestGDI);
 
-    MouseSafetyOnDrawEnd(Source, SourceGDI);
     MouseSafetyOnDrawEnd(Dest, DestGDI);
+    MouseSafetyOnDrawEnd(Source, SourceGDI);
 
     if(EngDeleteSurface(hTemp) == FALSE)
     {
@@ -116,8 +116,8 @@
 
   // Simulate a transparent blt
 
-  MouseSafetyOnDrawEnd(Source, SourceGDI);
   MouseSafetyOnDrawEnd(Dest, DestGDI);
+  MouseSafetyOnDrawEnd(Source, SourceGDI);
 
   return TRUE;
 }

reactos/subsys/win32k/objects
dc.c 1.121 -> 1.122
diff -u -r1.121 -r1.122
--- dc.c	19 Feb 2004 21:12:10 -0000	1.121
+++ dc.c	5 Mar 2004 09:02:42 -0000	1.122
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: dc.c,v 1.121 2004/02/19 21:12:10 weiden Exp $
+/* $Id: dc.c,v 1.122 2004/03/05 09:02:42 hbirr Exp $
  *
  * DC.C - Device context functions
  *
@@ -2072,4 +2072,14 @@
     }
 }
 
+BOOL FASTCALL
+IntIsPrimarSurface(PSURFGDI SurfGDI)
+{
+   if (PrimarySurface.Handle == NULL)
+     {
+       return FALSE;
+     }
+   return SurfGDI == (PSURFGDI)AccessInternalObject((ULONG) PrimarySurface.Handle) ? TRUE : FALSE;
+}
+
 /* EOF */
CVSspam 0.2.8