From f7ed0f0444fa122af9da96d28ccf416fe0fcfa10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herm=C3=A8s=20B=C3=A9lusca-Ma=C3=AFto?= Date: Fri, 5 Sep 2014 21:08:15 +0000 Subject: [PATCH] [CONSRV]: Code reorganization part 2 (add some comments for future fixes). svn path=/branches/condrv_restructure/; revision=64043 --- win32ss/user/winsrv/consrv/handle.c | 2 +- win32ss/user/winsrv/consrv/include/conio.h | 7 ++++++- win32ss/user/winsrv/consrv/include/settings.h | 3 +++ win32ss/user/winsrv/consrv/settings.c | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/win32ss/user/winsrv/consrv/handle.c b/win32ss/user/winsrv/consrv/handle.c index 4c74ab15a3e..f45bfffdef8 100644 --- a/win32ss/user/winsrv/consrv/handle.c +++ b/win32ss/user/winsrv/consrv/handle.c @@ -96,7 +96,7 @@ ConSrvCloseHandle(IN PCONSOLE_IO_HANDLE Handle) * even of the last buffer, but having to deal with a lack of * any active buffer might be error-prone. */ if (Buffer->ListEntry.Flink != Buffer->ListEntry.Blink) - ConioDeleteScreenBuffer(Buffer); + ConDrvDeleteScreenBuffer(Buffer); } else if (Object->Type == INPUT_BUFFER) { diff --git a/win32ss/user/winsrv/consrv/include/conio.h b/win32ss/user/winsrv/consrv/include/conio.h index 2c51e721729..e326e785fe9 100644 --- a/win32ss/user/winsrv/consrv/include/conio.h +++ b/win32ss/user/winsrv/consrv/include/conio.h @@ -191,7 +191,7 @@ typedef struct _CONSOLE_INPUT_BUFFER { CONSOLE_IO_OBJECT Header; /* Object header - MUST BE IN FIRST PLACE */ - ULONG InputBufferSize; /* Size of this input buffer */ + ULONG InputBufferSize; /* Size of this input buffer -- UNUSED!! */ LIST_ENTRY InputEvents; /* List head for input event queue */ HANDLE ActiveEvent; /* Event set when an input event is added in its queue */ @@ -344,6 +344,11 @@ NTSTATUS ConSrvConsoleCtrlEvent(IN ULONG CtrlEvent, IN PCONSOLE_PROCESS_DATA ProcessData); + +#define GetConsoleInputBufferMode(Console) \ + (Console)->InputBuffer.Mode + + /* conoutput.c */ PCHAR_INFO ConioCoordToPointer(PTEXTMODE_SCREEN_BUFFER Buff, ULONG X, ULONG Y); VOID ConioDrawConsole(PCONSOLE /*PCONSRV_CONSOLE*/ Console); diff --git a/win32ss/user/winsrv/consrv/include/settings.h b/win32ss/user/winsrv/consrv/include/settings.h index fcef0f18b58..9edfc4ce9d9 100644 --- a/win32ss/user/winsrv/consrv/include/settings.h +++ b/win32ss/user/winsrv/consrv/include/settings.h @@ -62,6 +62,9 @@ typedef struct _CONSOLE_INFO /* * Structure used to communicate with console.dll + * + * FIXME: It should overlap with the Windows' CONSOLE_STATE_INFO structure + * for GUI terminals!! */ typedef struct _CONSOLE_PROPS { diff --git a/win32ss/user/winsrv/consrv/settings.c b/win32ss/user/winsrv/consrv/settings.c index 7373f04401c..0e75955ab58 100644 --- a/win32ss/user/winsrv/consrv/settings.c +++ b/win32ss/user/winsrv/consrv/settings.c @@ -404,7 +404,7 @@ ConSrvGetDefaultSettings(IN OUT PCONSOLE_INFO ConsoleInfo, ConsoleInfo->QuickEdit = FALSE; ConsoleInfo->InsertMode = TRUE; - // ConsoleInfo->InputBufferSize; + // ConsoleInfo->InputBufferSize = 0; // Rule: ScreenBufferSize >= ConsoleSize ConsoleInfo->ScreenBufferSize.X = 80;