[WIN32K]
[reactos.git] / reactos / subsystems / win32 / win32k / include / dc.h
index b1f8cd1..07f412b 100644 (file)
@@ -76,8 +76,8 @@ typedef struct _DCLEVEL
   HGDIOBJ           hPath; /* HPATH */
   FLONG             flPath;
   LINEATTRS         laPath; /* 0x20 bytes */
-  PVOID             prgnClip; /* PROSRGNDATA */
-  PVOID             prgnMeta;
+  PREGION           prgnClip;
+  PREGION           prgnMeta;
   COLORADJUSTMENT   ca;
   FLONG             flFontState;
   UNIVERSAL_FONT_ID ufi;
@@ -126,9 +126,9 @@ typedef struct _DC
   RECTL       erclWindow;
   RECTL       erclBounds;
   RECTL       erclBoundsApp;
-  PROSRGNDATA prgnAPI; /* PROSRGNDATA */
-  PROSRGNDATA prgnVis; /* Visible region (must never be 0) */
-  PROSRGNDATA prgnRao;
+  PREGION     prgnAPI;
+  PREGION     prgnVis; /* Visible region (must never be 0) */
+  PREGION     prgnRao;
   POINTL      ptlFillOrigin;
   EBRUSHOBJ   eboFill;
   EBRUSHOBJ   eboLine;
@@ -213,7 +213,10 @@ DC_vSelectSurface(PDC pdc, PSURFACE psurfNew)
 {
     PSURFACE psurfOld = pdc->dclevel.pSurface;
     if (psurfOld)
+    {
+        psurfOld->hdc = NULL;
         SURFACE_ShareUnlockSurface(psurfOld);
+    }
     if (psurfNew)
         GDIOBJ_IncrementShareCount((POBJ)psurfNew);
     pdc->dclevel.pSurface = psurfNew;