From fc315e71166b62955b1ea6caa5ef66ec3ed41ee5 Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Thu, 26 Jul 2007 17:38:49 +0000 Subject: [PATCH] - 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 --- reactos/dll/win32/gdi32/gdi32.def | 4 +- reactos/dll/win32/gdi32/gdi32.rbuild | 1 + reactos/subsystems/win32/win32k/objects/pen.c | 38 ------------------- reactos/tools/nci/w32ksvc.db | 3 +- 4 files changed, 4 insertions(+), 42 deletions(-) diff --git a/reactos/dll/win32/gdi32/gdi32.def b/reactos/dll/win32/gdi32/gdi32.def index 19833e7d249..2ee621519f1 100644 --- a/reactos/dll/win32/gdi32/gdi32.def +++ b/reactos/dll/win32/gdi32/gdi32.def @@ -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 diff --git a/reactos/dll/win32/gdi32/gdi32.rbuild b/reactos/dll/win32/gdi32/gdi32.rbuild index 4f9702180c4..0a3067126eb 100644 --- a/reactos/dll/win32/gdi32/gdi32.rbuild +++ b/reactos/dll/win32/gdi32/gdi32.rbuild @@ -46,6 +46,7 @@ font.c linedda.c metafile.c + pen.c region.c text.c utils.c diff --git a/reactos/subsystems/win32/win32k/objects/pen.c b/reactos/subsystems/win32/win32k/objects/pen.c index 5359a3991ba..96c7454b831 100644 --- a/reactos/subsystems/win32/win32k/objects/pen.c +++ b/reactos/subsystems/win32/win32k/objects/pen.c @@ -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, diff --git a/reactos/tools/nci/w32ksvc.db b/reactos/tools/nci/w32ksvc.db index 3fd7f591fbf..1cda1ecd1ed 100644 --- a/reactos/tools/nci/w32ksvc.db +++ b/reactos/tools/nci/w32ksvc.db @@ -34,8 +34,7 @@ NtGdiCreateHatchBrushInternal 3 NtGdiCreateMetaFile 1 NtGdiCreatePalette 1 NtGdiCreatePatternBrushInternal 3 -NtGdiCreatePen 3 -NtGdiCreatePenIndirect 1 +NtGdiCreatePen 4 NtGdiCreatePolygonRgn 3 NtGdiCreatePolyPolygonRgn 4 NtGdiCreateRectRgn 4