mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 12:45:55 +00:00
[Win32k]
- Setup RectInRegion for internal use. svn path=/trunk/; revision=51102
This commit is contained in:
parent
508ce4d9f8
commit
01ecf02e26
3 changed files with 23 additions and 12 deletions
|
@ -44,6 +44,7 @@ INT APIENTRY IntGdiGetRgnBox(HRGN, RECTL*);
|
||||||
BOOL FASTCALL IntGdiPaintRgn(PDC, HRGN );
|
BOOL FASTCALL IntGdiPaintRgn(PDC, HRGN );
|
||||||
HRGN FASTCALL IntCreatePolyPolygonRgn(PPOINT, PULONG, INT, INT);
|
HRGN FASTCALL IntCreatePolyPolygonRgn(PPOINT, PULONG, INT, INT);
|
||||||
INT FASTCALL IntGdiOffsetRgn(PROSRGNDATA,INT,INT);
|
INT FASTCALL IntGdiOffsetRgn(PROSRGNDATA,INT,INT);
|
||||||
|
BOOL FASTCALL IntRectInRegion(HRGN,LPRECTL);
|
||||||
|
|
||||||
INT FASTCALL IntGdiCombineRgn(PROSRGNDATA, PROSRGNDATA, PROSRGNDATA, INT);
|
INT FASTCALL IntGdiCombineRgn(PROSRGNDATA, PROSRGNDATA, PROSRGNDATA, INT);
|
||||||
INT FASTCALL REGION_Complexity(PROSRGNDATA);
|
INT FASTCALL REGION_Complexity(PROSRGNDATA);
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
* with this program; if not, write to the Free Software Foundation, Inc.,
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
*/
|
*/
|
||||||
/* $Id$ */
|
|
||||||
|
|
||||||
#include <win32k.h>
|
#include <win32k.h>
|
||||||
|
|
||||||
|
|
|
@ -3204,6 +3204,27 @@ IntCreatePolyPolygonRgn(
|
||||||
return hrgn;
|
return hrgn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
FASTCALL
|
||||||
|
IntRectInRegion(
|
||||||
|
HRGN hRgn,
|
||||||
|
LPRECTL rc
|
||||||
|
)
|
||||||
|
{
|
||||||
|
PROSRGNDATA Rgn;
|
||||||
|
BOOL Ret;
|
||||||
|
|
||||||
|
if (!(Rgn = RGNOBJAPI_Lock(hRgn, NULL)))
|
||||||
|
{
|
||||||
|
return ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
Ret = REGION_RectInRegion(Rgn, rc);
|
||||||
|
RGNOBJAPI_Unlock(Rgn);
|
||||||
|
return Ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// NtGdi Exported Functions
|
// NtGdi Exported Functions
|
||||||
//
|
//
|
||||||
|
@ -3765,16 +3786,9 @@ NtGdiRectInRegion(
|
||||||
LPRECTL unsaferc
|
LPRECTL unsaferc
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
PROSRGNDATA Rgn;
|
|
||||||
RECTL rc = {0};
|
RECTL rc = {0};
|
||||||
BOOL Ret;
|
|
||||||
NTSTATUS Status = STATUS_SUCCESS;
|
NTSTATUS Status = STATUS_SUCCESS;
|
||||||
|
|
||||||
if (!(Rgn = RGNOBJAPI_Lock(hRgn, NULL)))
|
|
||||||
{
|
|
||||||
return ERROR;
|
|
||||||
}
|
|
||||||
|
|
||||||
_SEH2_TRY
|
_SEH2_TRY
|
||||||
{
|
{
|
||||||
ProbeForRead(unsaferc, sizeof(RECT), 1);
|
ProbeForRead(unsaferc, sizeof(RECT), 1);
|
||||||
|
@ -3788,15 +3802,12 @@ NtGdiRectInRegion(
|
||||||
|
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
RGNOBJAPI_Unlock(Rgn);
|
|
||||||
SetLastNtError(Status);
|
SetLastNtError(Status);
|
||||||
DPRINT1("NtGdiRectInRegion: bogus rc\n");
|
DPRINT1("NtGdiRectInRegion: bogus rc\n");
|
||||||
return ERROR;
|
return ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
Ret = REGION_RectInRegion(Rgn, &rc);
|
return IntRectInRegion(hRgn, &rc);
|
||||||
RGNOBJAPI_Unlock(Rgn);
|
|
||||||
return Ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL
|
BOOL
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue