[CMAKE]
[reactos.git] / subsystems / win32 / win32k / objects / dcstate.c
index d26cc36..5af2052 100644 (file)
@@ -6,7 +6,7 @@
  * PROGRAMER:         Timo Kreuzer (timo.kreuzer@rectos.org)
  */
 
-#include <w32k.h>
+#include <win32k.h>
 
 #define NDEBUG
 #include <debug.h>
@@ -48,12 +48,6 @@ DC_vCopyState(PDC pdcSrc, PDC pdcDst, BOOL To)
     // FIXME: handle refs
     pdcDst->dclevel.plfnt           = pdcSrc->dclevel.plfnt;
 
-    /* ROS hacks */
-    if (pdcDst->dctype != DC_TYPE_MEMORY)
-    {
-        pdcDst->rosdc.bitsPerPixel = pdcSrc->rosdc.bitsPerPixel;
-    }
-
     /* Get/SetDCState() don't change hVisRgn field ("Undoc. Windows" p.559). */
     if (To) // Copy "To" SaveDC state.
     {
@@ -81,11 +75,6 @@ IntGdiCleanDC(HDC hDC)
     // Clean the DC
     if (defaultDCstate) DC_vCopyState(defaultDCstate, dc, FALSE);
 
-    if (dc->dctype != DC_TYPE_MEMORY)
-    {
-        dc->rosdc.bitsPerPixel = defaultDCstate->rosdc.bitsPerPixel;
-    }
-
     DC_UnlockDc(dc);
 
     return TRUE;
@@ -112,16 +101,12 @@ DC_vRestoreDC(
     IN PDC pdc,
     INT iSaveLevel)
 {
-    PEPROCESS pepCurrentProcess;
     HDC hdcSave;
     PDC pdcSave;
 
     ASSERT(iSaveLevel > 0);
     DPRINT("DC_vRestoreDC(%p, %ld)\n", pdc->BaseObject.hHmgr, iSaveLevel);
 
-    /* Get current process */
-    pepCurrentProcess = PsGetCurrentProcess();
-
     /* Loop the save levels */
     while (pdc->dclevel.lSaveDepth > iSaveLevel)
     {
@@ -129,7 +114,7 @@ DC_vRestoreDC(
         DPRINT("RestoreDC = %p\n", hdcSave);
 
         /* Set us as the owner */
-        if (!GDIOBJ_SetOwnership(hdcSave, pepCurrentProcess))
+        if (!GreSetObjectOwner(hdcSave, GDI_OBJ_HMGR_POWNED))
         {
             /* Could not get ownership. That's bad! */
             DPRINT1("Could not get ownership of saved DC (%p) for hdc %p!\n",
@@ -160,7 +145,7 @@ DC_vRestoreDC(
             DC_vCopyState(pdcSave, pdc, FALSE);
 
             /* Only memory DC's change their surface */
-            if (pdcSave->dctype == DCTYPE_MEMORY)
+            if (pdc->dctype == DCTYPE_MEMORY)
                 DC_vSelectSurface(pdc, pdcSave->dclevel.pSurface);
 
             // Restore Path by removing it, if the Save flag is set.
@@ -201,7 +186,7 @@ NtGdiRestoreDC(
     pdc = DC_LockDc(hdc);
     if (!pdc)
     {
-        SetLastWin32Error(ERROR_INVALID_HANDLE);
+        EngSetLastError(ERROR_INVALID_HANDLE);
         return FALSE;
     }
 
@@ -217,7 +202,7 @@ NtGdiRestoreDC(
         DPRINT("Illegal save level, requested: %ld, current: %ld\n",
                iSaveLevel, pdc->dclevel.lSaveDepth);
         DC_UnlockDc(pdc);
-        SetLastWin32Error(ERROR_INVALID_PARAMETER);
+        EngSetLastError(ERROR_INVALID_PARAMETER);
         return FALSE;
     }
 
@@ -247,7 +232,7 @@ NtGdiSaveDC(
     if (pdc == NULL)
     {
         DPRINT("Could not lock DC\n");
-        SetLastWin32Error(ERROR_INVALID_HANDLE);
+        EngSetLastError(ERROR_INVALID_HANDLE);
         return 0;
     }
 
@@ -272,7 +257,7 @@ NtGdiSaveDC(
 
     /* Make it a kernel handle
        (FIXME: windows handles this different, see wiki)*/
-    GDIOBJ_SetOwnership(hdcSave, NULL);
+    GreSetObjectOwner(hdcSave, GDI_OBJ_HMGR_PUBLIC);
 
     /* Copy the current state */
     DC_vCopyState(pdc, pdcSave, TRUE);