You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2011/06/21 08:45:50 UTC
svn commit: r1137878 -
/commons/proper/daemon/trunk/src/native/windows/src/utils.c
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;
}