From 440e31a73212382362cf64982de8ecf2d579cdb4 Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Tue, 14 Jul 2020 16:23:28 +0200 Subject: [PATCH] kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in FillConsoleOutputAttribute. Signed-off-by: Jacek Caban Signed-off-by: Alexandre Julliard --- dlls/kernelbase/console.c | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/dlls/kernelbase/console.c b/dlls/kernelbase/console.c index 4468d713d90..49259857af0 100644 --- a/dlls/kernelbase/console.c +++ b/dlls/kernelbase/console.c @@ -400,7 +400,7 @@ DWORD WINAPI CtrlRoutine( void *arg ) BOOL WINAPI DECLSPEC_HOTPATCH FillConsoleOutputAttribute( HANDLE handle, WORD attr, DWORD length, COORD coord, DWORD *written ) { - BOOL ret; + struct condrv_fill_output_params params; TRACE( "(%p,%d,%d,(%dx%d),%p)\n", handle, attr, length, coord.X, coord.Y, written ); @@ -411,19 +411,16 @@ BOOL WINAPI DECLSPEC_HOTPATCH FillConsoleOutputAttribute( HANDLE handle, WORD at } *written = 0; - SERVER_START_REQ( fill_console_output ) - { - req->handle = console_handle_unmap( handle ); - req->x = coord.X; - req->y = coord.Y; - req->mode = CHAR_INFO_MODE_ATTR; - req->wrap = TRUE; - req->data.attr = attr; - req->count = length; - if ((ret = !wine_server_call_err( req ))) *written = reply->written; - } - SERVER_END_REQ; - return ret; + + params.mode = CHAR_INFO_MODE_ATTR; + params.x = coord.X; + params.y = coord.Y; + params.count = length; + params.wrap = TRUE; + params.ch = 0; + params.attr = attr; + return console_ioctl( handle, IOCTL_CONDRV_FILL_OUTPUT, ¶ms, sizeof(params), + written, sizeof(written), NULL ); }