mirror of
https://github.com/reactos/reactos.git
synced 2024-07-24 05:08:16 +00:00
[WIN32K]
- Properly initialize hVisRgn in CLIPPING_UpdateGCRegion This fixes a whole bunch of "IntGdiCombineRgn requires hSrc2 != NULL for combine mode 1!", and probably some bugs. Dedicated to encod3d. svn path=/trunk/; revision=48042
This commit is contained in:
parent
746e0c9afd
commit
1954fd59da
|
@ -26,7 +26,7 @@ int FASTCALL
|
||||||
CLIPPING_UpdateGCRegion(DC* Dc)
|
CLIPPING_UpdateGCRegion(DC* Dc)
|
||||||
{
|
{
|
||||||
PROSRGNDATA CombinedRegion;
|
PROSRGNDATA CombinedRegion;
|
||||||
HRGN hRgnVis = NULL;
|
HRGN hRgnVis = Dc->prgnVis->BaseObject.hHmgr;
|
||||||
|
|
||||||
/* Experiment with API region based on wine.. */
|
/* Experiment with API region based on wine.. */
|
||||||
if (Dc->rosdc.hClipRgn && Dc->dclevel.prgnMeta)
|
if (Dc->rosdc.hClipRgn && Dc->dclevel.prgnMeta)
|
||||||
|
@ -56,7 +56,7 @@ CLIPPING_UpdateGCRegion(DC* Dc)
|
||||||
Dc->rosdc.hGCClipRgn = IntSysCreateRectRgn(0, 0, 0, 0);
|
Dc->rosdc.hGCClipRgn = IntSysCreateRectRgn(0, 0, 0, 0);
|
||||||
|
|
||||||
if (Dc->rosdc.hClipRgn == NULL)
|
if (Dc->rosdc.hClipRgn == NULL)
|
||||||
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, ((PROSRGNDATA)Dc->prgnVis)->BaseObject.hHmgr, 0, RGN_COPY);
|
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, hRgnVis, 0, RGN_COPY);
|
||||||
else
|
else
|
||||||
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, Dc->rosdc.hClipRgn, hRgnVis, RGN_AND);
|
NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, Dc->rosdc.hClipRgn, hRgnVis, RGN_AND);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue