Index: dll/win32/user32/windows/message.c =================================================================== --- dll/win32/user32/windows/message.c (revision 40964) +++ dll/win32/user32/windows/message.c (working copy) @@ -1709,7 +1709,7 @@ PostQuitMessage( int nExitCode) { - (void) NtUserPostMessage(NULL, WM_QUIT, nExitCode, 0); + (VOID)NtUserCallOneParam(nExitCode, ONEPARAM_ROUTINE_POSTQUITMESSAGE) } Index: subsystems/win32/win32k/ntuser/simplecall.c =================================================================== --- subsystems/win32/win32k/ntuser/simplecall.c (revision 40964) +++ subsystems/win32/win32k/ntuser/simplecall.c (working copy) @@ -152,6 +152,13 @@ switch(Routine) { + case ONEPARAM_ROUTINE_POSTQUITMESSAGE: + { + PTHREADINFO pti; + pti = PsGetCurrentThreadWin32Thread(); + MsqPostQuitMessage(pti->MessageQueue, Param); + RETURN(TRUE); + } case ONEPARAM_ROUTINE_SHOWCURSOR: RETURN( (DWORD)UserShowCursor((BOOL)Param) );