Module: wine Branch: master Commit: bb0c660ed0d45325d15776210643dad66656a7e2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=bb0c660ed0d45325d157762106...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Mar 29 15:48:25 2010 +0200
user32: Always start the 64-bit version of wineboot.exe on Wow64.
---
dlls/user32/user_main.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/dlls/user32/user_main.c b/dlls/user32/user_main.c index 19482e4..2c2b256 100644 --- a/dlls/user32/user_main.c +++ b/dlls/user32/user_main.c @@ -357,6 +357,7 @@ BOOL WINAPI ExitWindowsEx( UINT flags, DWORD reason ) WCHAR cmdline[MAX_PATH + 64]; PROCESS_INFORMATION pi; STARTUPINFOW si; + void *redir;
GetSystemDirectoryW( app, MAX_PATH - sizeof(winebootW)/sizeof(WCHAR) ); strcatW( app, winebootW ); @@ -372,11 +373,14 @@ BOOL WINAPI ExitWindowsEx( UINT flags, DWORD reason )
memset( &si, 0, sizeof si ); si.cb = sizeof si; + Wow64DisableWow64FsRedirection( &redir ); if (!CreateProcessW( app, cmdline, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &si, &pi )) { + Wow64RevertWow64FsRedirection( redir ); ERR( "Failed to run %s\n", debugstr_w(cmdline) ); return FALSE; } + Wow64RevertWow64FsRedirection( redir ); CloseHandle( pi.hProcess ); CloseHandle( pi.hThread ); return TRUE;