Author: tkreuzer
Date: Tue May 19 01:29:50 2009
New Revision: 40971
URL:
http://svn.reactos.org/svn/reactos?rev=40971&view=rev
Log:
Implement ONE_PARAM_ROUTINE_POSTQUITMESSAGE case in NtUserCallOneParam and use it in
PostQuitMessage instead of NtUserPostMessage. Fixes some hangs in comctl32_winetests
introduced with r40964. Patch by Giannis Adamopoulos.
See issue #4058 for more details.
Modified:
trunk/reactos/dll/win32/user32/windows/message.c
trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
Modified: trunk/reactos/dll/win32/user32/windows/message.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/m…
==============================================================================
--- trunk/reactos/dll/win32/user32/windows/message.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/user32/windows/message.c [iso-8859-1] Tue May 19 01:29:50
2009
@@ -1709,7 +1709,7 @@
PostQuitMessage(
int nExitCode)
{
- (void) NtUserPostMessage(NULL, WM_QUIT, nExitCode, 0);
+ NtUserCallOneParam(nExitCode, ONEPARAM_ROUTINE_POSTQUITMESSAGE);
}
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/simplecall.c [iso-8859-1] Tue May 19
01:29:50 2009
@@ -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) );