[KERNEL32/CONSRV]

- Use a standard win32 thread function for the ConsoleControlDispatcher thread, instead of a custom PCONTROLDISPATCHER one.
- Deactivate debug outputs in console.c, which were activated by error in r57706.

svn path=/branches/ros-csrss/; revision=57714
This commit is contained in:
Hermès Bélusca-Maïto 2012-11-15 23:06:49 +00:00
parent 0473031b87
commit 903d3cfb1c
2 changed files with 19 additions and 24 deletions

View file

@ -15,7 +15,7 @@
#include <k32.h>
// #define NDEBUG
#define NDEBUG
#include <debug.h>
extern RTL_CRITICAL_SECTION ConsoleLock;
@ -66,12 +66,12 @@ DefaultConsoleCtrlHandler(DWORD Event)
return TRUE;
}
__declspec(noreturn)
VOID
CALLBACK
ConsoleControlDispatcher(DWORD CodeAndFlag)
DWORD
WINAPI
ConsoleControlDispatcher(IN LPVOID lpThreadParameter)
{
DWORD nExitCode = 0;
DWORD CodeAndFlag = PtrToUlong(lpThreadParameter);
DWORD nCode = CodeAndFlag & MAXLONG;
UINT i;
EXCEPTION_RECORD erException;
@ -116,7 +116,6 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
ExitThread(0);
}
break;
}
@ -126,17 +125,14 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
break;
case 3:
ExitThread(0);
break;
case 4:
ExitProcess(CONTROL_C_EXIT);
break;
default:
ASSERT(FALSE);
break;
}
@ -175,6 +171,7 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
RtlLeaveCriticalSection(&ConsoleLock);
ExitThread(nExitCode);
return STATUS_SUCCESS;
}

View file

@ -153,12 +153,10 @@ typedef struct
DWORD ControlKeyState;
} CSRSS_READ_CONSOLE, *PCSRSS_READ_CONSOLE;
typedef VOID (CALLBACK *PCONTROLDISPATCHER)(DWORD);
typedef struct
{
PCONTROLDISPATCHER CtrlDispatcher;
BOOLEAN ConsoleNeeded;
LPTHREAD_START_ROUTINE CtrlDispatcher;
BOOL ConsoleNeeded;
INT ShowCmd;
HANDLE Console;
HANDLE InputHandle;
@ -308,7 +306,7 @@ typedef struct
HANDLE ConsoleHandle;
BOOL Unicode;
SMALL_RECT ScrollRectangle;
BOOLEAN UseClipRectangle;
BOOL UseClipRectangle;
SMALL_RECT ClipRectangle;
COORD DestinationOrigin;
CHAR_INFO Fill;