Author: mturk
Date: Tue Jun 21 06:45:50 2011
New Revision: 1137878
URL: http://svn.apache.org/viewvc?rev=1137878&view=rev
Log:
Modify CRT's PATH as well
Modified:
commons/proper/daemon/trunk/src/native/windows/src/utils.c
Modified: commons/proper/daemon/trunk/src/native/windows/src/utils.c
URL:
http://svn.apache.org/viewvc/commons/proper/daemon/trunk/src/native/windows/src/utils.c?rev=1137878&r1=1137877&r2=1137878&view=diff
==============================================================================
--- commons/proper/daemon/trunk/src/native/windows/src/utils.c (original)
+++ commons/proper/daemon/trunk/src/native/windows/src/utils.c Tue Jun 21
06:45:50 2011
@@ -116,17 +116,19 @@ BOOL apxAddEnvironmentVariableW(APXHANDL
rc = GetEnvironmentVariableW(wsName, NULL, 0);
if (rc == 0 && GetLastError() == ERROR_ENVVAR_NOT_FOUND)
return FALSE;
- al = lstrlenW(szAdd) + 1;
+ al = lstrlenW(szAdd) + 6;
if (!(wsAdd = apxPoolAlloc(hPool, (al + rc + 1) * sizeof(WCHAR))))
return FALSE;
- lstrcpyW(wsAdd, szAdd);
+ lstrcpyW(wsAdd, L"PATH=");
+ lstrcatW(wsAdd, szAdd);
lstrcatW(wsAdd, L";");
- if (!GetEnvironmentVariableW(wsName, wsAdd + al, rc)) {
+ if (!GetEnvironmentVariableW(wsName, wsAdd + al, rc - al)) {
apxLogWrite(APXLOG_MARK_SYSERR);
apxFree(wsAdd);
return FALSE;
}
- SetEnvironmentVariableW(wsName, wsAdd);
+ SetEnvironmentVariableW(wsName, wsAdd + 5);
+ _wputenv(wsAdd);
apxFree(wsAdd);
return TRUE;
}