Module: wine Branch: master Commit: 0beaa44d7d0de6f15306257b40bed5bae4b6b60f URL: http://source.winehq.org/git/wine.git/?a=commit;h=0beaa44d7d0de6f15306257b40...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Oct 27 11:20:34 2009 +0100
ole32: Specify the full application path when starting rpcss.exe.
---
dlls/ole32/moniker.c | 22 +++++----------------- 1 files changed, 5 insertions(+), 17 deletions(-)
diff --git a/dlls/ole32/moniker.c b/dlls/ole32/moniker.c index f65fe8f..a7c5a11 100644 --- a/dlls/ole32/moniker.c +++ b/dlls/ole32/moniker.c @@ -124,30 +124,18 @@ static BOOL start_rpcss(void) { PROCESS_INFORMATION pi; STARTUPINFOW si; - static WCHAR cmd[6]; - static const WCHAR rpcss[] = {'r','p','c','s','s',0}; + WCHAR cmd[MAX_PATH]; + static const WCHAR rpcss[] = {'\','r','p','c','s','s','.','e','x','e',0}; BOOL rslt;
TRACE("\n");
- ZeroMemory(&pi, sizeof(PROCESS_INFORMATION)); ZeroMemory(&si, sizeof(STARTUPINFOA)); si.cb = sizeof(STARTUPINFOA); + GetSystemDirectoryW( cmd, MAX_PATH - sizeof(rpcss)/sizeof(WCHAR) ); + strcatW( cmd, rpcss );
- memcpy(cmd, rpcss, sizeof(rpcss)); - - rslt = CreateProcessW( - NULL, /* executable */ - cmd, /* command line */ - NULL, /* process security attributes */ - NULL, /* primary thread security attributes */ - FALSE, /* inherit handles */ - 0, /* creation flags */ - NULL, /* use parent's environment */ - NULL, /* use parent's current directory */ - &si, /* STARTUPINFO pointer */ - &pi /* PROCESS_INFORMATION */ - ); + rslt = CreateProcessW( cmd, cmd, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
if (rslt) {