Module: wine Branch: master Commit: f334c0fbba0e55a098f3d8d21d741eee2bd3fbb7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f334c0fbba0e55a098f3d8d21d...
Author: Alexandre Julliard julliard@winehq.org Date: Wed May 7 17:33:19 2008 +0200
winedos: Make sure that the main message queue exists before the DOS thread starts.
---
dlls/winedos/module.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/dlls/winedos/module.c b/dlls/winedos/module.c index 1dfaabd..ade7732 100644 --- a/dlls/winedos/module.c +++ b/dlls/winedos/module.c @@ -655,6 +655,7 @@ static void MZ_Launch( LPCSTR cmdtail, int length ) BYTE *psp_start = PTR_REAL_TO_LIN( DOSVM_psp, 0 ); DWORD rv; SYSLEVEL *lock; + MSG msg;
MZ_FillPSP(psp_start, cmdtail, length); pTask->flags |= TDBF_WINOLDAP; @@ -665,6 +666,9 @@ static void MZ_Launch( LPCSTR cmdtail, int length ) GetpWin16Lock( &lock ); _LeaveSysLevel( lock );
+ /* force the message queue to be created */ + PeekMessageW(&msg, NULL, WM_USER, WM_USER, PM_NOREMOVE); + ResumeThread(dosvm_thread); rv = DOSVM_Loop(dosvm_thread);