Use PREGION as type fo the DC regions instead of PVOID.

svn path=/branches/reactos-yarotows/; revision=46630
This commit is contained in:
Timo Kreuzer 2010-03-31 22:43:02 +00:00
parent 2190eb07dd
commit 49383c3d97
3 changed files with 8 additions and 7 deletions

View file

@ -8,6 +8,7 @@ typedef struct _DC *PDC;
#include "bitmaps.h"
#include "pdevobj.h"
#include "palette.h"
#include "region.h"
/* Constants ******************************************************************/
@ -127,9 +128,9 @@ typedef struct _DC
RECTL erclWindow;
RECTL erclBounds;
RECTL erclBoundsApp;
PVOID prgnAPI; /* PROSRGNDATA */
PVOID prgnVis; /* Visible region (must never be 0) */
PVOID prgnRao;
PREGION prgnAPI; /* PROSRGNDATA */
PREGION prgnVis; /* Visible region (must never be 0) */
PREGION prgnRao;
POINTL ptlFillOrigin;
EBRUSHOBJ eboFill;
EBRUSHOBJ eboLine;

View file

@ -14,7 +14,7 @@ typedef struct _ROSRGNDATA
RGNDATAHEADER rdh;
RECTL *Buffer;
} ROSRGNDATA, *PROSRGNDATA, *LPROSRGNDATA;
} ROSRGNDATA, *PROSRGNDATA, *LPROSRGNDATA, REGION, *PREGION;
/* Functions ******************************************************************/

View file

@ -365,7 +365,7 @@ DC_Cleanup(PVOID ObjectBody)
if (pdc->rosdc.hClipRgn)
GreDeleteObject(pdc->rosdc.hClipRgn);
if (pdc->prgnVis)
REGION_FreeRgnByHandle(((PROSRGNDATA)pdc->prgnVis)->BaseObject.hHmgr);
REGION_FreeRgnByHandle(pdc->prgnVis->BaseObject.hHmgr);
ASSERT(pdc->rosdc.hGCClipRgn);
if (pdc->rosdc.hGCClipRgn)
GreDeleteObject(pdc->rosdc.hGCClipRgn);
@ -419,12 +419,12 @@ DC_SetOwnership(HDC hDC, PEPROCESS Owner)
}
if (pDC->prgnVis)
{ // FIXME! HAX!!!
Index = GDI_HANDLE_GET_INDEX(((PROSRGNDATA)pDC->prgnVis)->BaseObject.hHmgr);
Index = GDI_HANDLE_GET_INDEX(pDC->prgnVis->BaseObject.hHmgr);
Entry = &GdiHandleTable->Entries[Index];
if (Entry->UserData) FreeObjectAttr(Entry->UserData);
Entry->UserData = NULL;
//
if (!GDIOBJ_SetOwnership(((PROSRGNDATA)pDC->prgnVis)->BaseObject.hHmgr, Owner)) goto leave;
if (!GDIOBJ_SetOwnership(pDC->prgnVis->BaseObject.hHmgr, Owner)) goto leave;
}
if (pDC->rosdc.hGCClipRgn)
{ // FIXME! HAX!!!