From a8e2f4327fa0204dfcf4222444643f2a4cf1242b Mon Sep 17 00:00:00 2001
From: Alexandre Julliard <julliard@winehq.org>
Date: Mon, 29 Mar 2010 15:47:52 +0200
Subject: [PATCH] ole32: Always start the 64-bit version of rpcss.exe on Wow64.

---
 dlls/ole32/moniker.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/dlls/ole32/moniker.c b/dlls/ole32/moniker.c
index a7c5a11c98b..2fb03ae6650 100644
--- a/dlls/ole32/moniker.c
+++ b/dlls/ole32/moniker.c
@@ -127,6 +127,7 @@ static BOOL start_rpcss(void)
     WCHAR cmd[MAX_PATH];
     static const WCHAR rpcss[] = {'\\','r','p','c','s','s','.','e','x','e',0};
     BOOL rslt;
+    void *redir;
 
     TRACE("\n");
 
@@ -135,7 +136,9 @@ static BOOL start_rpcss(void)
     GetSystemDirectoryW( cmd, MAX_PATH - sizeof(rpcss)/sizeof(WCHAR) );
     strcatW( cmd, rpcss );
 
+    Wow64DisableWow64FsRedirection( &redir );
     rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
+    Wow64RevertWow64FsRedirection( redir );
 
     if (rslt)
     {
-- 
GitLab