- fix parameter count for NtGdiCreatePen in w32ksvc.db (4 params, not 3)

- implement CreatePen, calling NtGdiCreatePen@16 instead of forwarding to NtGdiCreatePen@12, wich does not exist
- implement CreatePenIndirect, calling NtGdiCreatePen, instead of forwarding to NtGdiCreatePenIndirect
- remove NtGdiCreatePenIndirect from w32ksvc.db and win32k

svn path=/trunk/; revision=27865
This commit is contained in:
Timo Kreuzer 2007-07-26 17:38:49 +00:00
parent 6e95387504
commit fc315e7116
4 changed files with 4 additions and 42 deletions

View file

@ -79,8 +79,8 @@ CreateMetaFileA@4
CreateMetaFileW@4
CreatePalette@4=NtGdiCreatePalette@4
CreatePatternBrush@4
CreatePen@12=NtGdiCreatePen@12
CreatePenIndirect@4=NtGdiCreatePenIndirect@4
CreatePen@12
CreatePenIndirect@4
CreatePolyPolygonRgn@16=NtGdiCreatePolyPolygonRgn@16
CreatePolygonRgn@12=NtGdiCreatePolygonRgn@12
CreateRectRgn@16=NtGdiCreateRectRgn@16

View file

@ -46,6 +46,7 @@
<file>font.c</file>
<file>linedda.c</file>
<file>metafile.c</file>
<file>pen.c</file>
<file>region.c</file>
<file>text.c</file>
<file>utils.c</file>

View file

@ -241,44 +241,6 @@ NtGdiCreatePen(
0);
}
HPEN STDCALL
NtGdiCreatePenIndirect(CONST PLOGPEN LogPen)
{
LOGPEN SafeLogPen = {0};
NTSTATUS Status = STATUS_SUCCESS;
_SEH_TRY
{
ProbeForRead(LogPen,
sizeof(LOGPEN),
1);
SafeLogPen = *LogPen;
}
_SEH_HANDLE
{
Status = _SEH_GetExceptionCode();
}
_SEH_END;
if (!NT_SUCCESS(Status))
{
SetLastNtError(Status);
return 0;
}
return IntGdiExtCreatePen(SafeLogPen.lopnStyle,
SafeLogPen.lopnWidth.x,
BS_SOLID,
SafeLogPen.lopnColor,
0,
0,
0,
NULL,
0,
TRUE,
0);
}
HPEN STDCALL
NtGdiExtCreatePen(
DWORD dwPenStyle,

View file

@ -34,8 +34,7 @@ NtGdiCreateHatchBrushInternal 3
NtGdiCreateMetaFile 1
NtGdiCreatePalette 1
NtGdiCreatePatternBrushInternal 3
NtGdiCreatePen 3
NtGdiCreatePenIndirect 1
NtGdiCreatePen 4
NtGdiCreatePolygonRgn 3
NtGdiCreatePolyPolygonRgn 4
NtGdiCreateRectRgn 4