Alexandre Julliard : ole32: Specify the full application path when starting rpcss.exe.
Alexandre Julliard
julliard at winehq.org
Tue Oct 27 09:46:31 CDT 2009
Module: wine
Branch: master
Commit: 0beaa44d7d0de6f15306257b40bed5bae4b6b60f
URL: http://source.winehq.org/git/wine.git/?a=commit;h=0beaa44d7d0de6f15306257b40bed5bae4b6b60f
Author: Alexandre Julliard <julliard at 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)
{
More information about the wine-cvs
mailing list