mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 20:23:34 +00:00
[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:
parent
0473031b87
commit
903d3cfb1c
2 changed files with 19 additions and 24 deletions
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
#include <k32.h>
|
#include <k32.h>
|
||||||
|
|
||||||
// #define NDEBUG
|
#define NDEBUG
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
extern RTL_CRITICAL_SECTION ConsoleLock;
|
extern RTL_CRITICAL_SECTION ConsoleLock;
|
||||||
|
@ -66,12 +66,12 @@ DefaultConsoleCtrlHandler(DWORD Event)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
__declspec(noreturn)
|
DWORD
|
||||||
VOID
|
WINAPI
|
||||||
CALLBACK
|
ConsoleControlDispatcher(IN LPVOID lpThreadParameter)
|
||||||
ConsoleControlDispatcher(DWORD CodeAndFlag)
|
|
||||||
{
|
{
|
||||||
DWORD nExitCode = 0;
|
DWORD nExitCode = 0;
|
||||||
|
DWORD CodeAndFlag = PtrToUlong(lpThreadParameter);
|
||||||
DWORD nCode = CodeAndFlag & MAXLONG;
|
DWORD nCode = CodeAndFlag & MAXLONG;
|
||||||
UINT i;
|
UINT i;
|
||||||
EXCEPTION_RECORD erException;
|
EXCEPTION_RECORD erException;
|
||||||
|
@ -116,7 +116,6 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
|
||||||
|
|
||||||
ExitThread(0);
|
ExitThread(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -126,17 +125,14 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
|
|
||||||
ExitThread(0);
|
ExitThread(0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
|
|
||||||
ExitProcess(CONTROL_C_EXIT);
|
ExitProcess(CONTROL_C_EXIT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
||||||
ASSERT(FALSE);
|
ASSERT(FALSE);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -175,6 +171,7 @@ ConsoleControlDispatcher(DWORD CodeAndFlag)
|
||||||
|
|
||||||
RtlLeaveCriticalSection(&ConsoleLock);
|
RtlLeaveCriticalSection(&ConsoleLock);
|
||||||
ExitThread(nExitCode);
|
ExitThread(nExitCode);
|
||||||
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -153,12 +153,10 @@ typedef struct
|
||||||
DWORD ControlKeyState;
|
DWORD ControlKeyState;
|
||||||
} CSRSS_READ_CONSOLE, *PCSRSS_READ_CONSOLE;
|
} CSRSS_READ_CONSOLE, *PCSRSS_READ_CONSOLE;
|
||||||
|
|
||||||
typedef VOID (CALLBACK *PCONTROLDISPATCHER)(DWORD);
|
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
PCONTROLDISPATCHER CtrlDispatcher;
|
LPTHREAD_START_ROUTINE CtrlDispatcher;
|
||||||
BOOLEAN ConsoleNeeded;
|
BOOL ConsoleNeeded;
|
||||||
INT ShowCmd;
|
INT ShowCmd;
|
||||||
HANDLE Console;
|
HANDLE Console;
|
||||||
HANDLE InputHandle;
|
HANDLE InputHandle;
|
||||||
|
@ -308,7 +306,7 @@ typedef struct
|
||||||
HANDLE ConsoleHandle;
|
HANDLE ConsoleHandle;
|
||||||
BOOL Unicode;
|
BOOL Unicode;
|
||||||
SMALL_RECT ScrollRectangle;
|
SMALL_RECT ScrollRectangle;
|
||||||
BOOLEAN UseClipRectangle;
|
BOOL UseClipRectangle;
|
||||||
SMALL_RECT ClipRectangle;
|
SMALL_RECT ClipRectangle;
|
||||||
COORD DestinationOrigin;
|
COORD DestinationOrigin;
|
||||||
CHAR_INFO Fill;
|
CHAR_INFO Fill;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue