The return size calculation's of GetEnvironmentVariable string was wrong. Thx to <Bizzy_D> to find out cd %windir% did not work. Now it will

svn path=/trunk/; revision=16528
This commit is contained in:
Magnus Olsen 2005-07-10 22:12:07 +00:00
parent 67af25e720
commit e43573196c

View file

@ -70,7 +70,7 @@ GetEnvironmentVariableA (
SetLastErrorByStatus (Status); SetLastErrorByStatus (Status);
if (Status == STATUS_BUFFER_TOO_SMALL) if (Status == STATUS_BUFFER_TOO_SMALL)
{ {
return VarValueU.Length / sizeof(WCHAR) + 1; return VarValueU.Length / sizeof(WCHAR) + sizeof(WCHAR);
} }
else else
{ {
@ -91,7 +91,7 @@ GetEnvironmentVariableA (
/* free unicode variable name string */ /* free unicode variable name string */
RtlFreeUnicodeString (&VarNameU); RtlFreeUnicodeString (&VarNameU);
return (VarValueU.Length / sizeof(WCHAR)); return (VarValueU.Length / sizeof(WCHAR) + sizeof(WCHAR));
} }
@ -125,7 +125,7 @@ GetEnvironmentVariableW (
SetLastErrorByStatus (Status); SetLastErrorByStatus (Status);
if (Status == STATUS_BUFFER_TOO_SMALL) if (Status == STATUS_BUFFER_TOO_SMALL)
{ {
return (VarValue.Length / sizeof(WCHAR)) + 1; return (VarValue.Length / sizeof(WCHAR)) + sizeof(WCHAR);
} }
else else
{ {
@ -133,7 +133,7 @@ GetEnvironmentVariableW (
} }
} }
return (VarValue.Length / sizeof(WCHAR)); return (VarValue.Length / sizeof(WCHAR) + sizeof(WCHAR));
} }