mirror of
https://github.com/reactos/reactos.git
synced 2024-07-12 23:55:07 +00:00
[KERNEL32]
Fix GetEnvironmentStringsA/W. See issue #6633 for more details. svn path=/trunk/; revision=54282
This commit is contained in:
parent
09de8a1431
commit
b9abf0ef06
|
@ -294,18 +294,18 @@ GetEnvironmentStringsA(VOID)
|
|||
|
||||
do
|
||||
{
|
||||
p += wcslen(Environment) + 1;
|
||||
p += wcslen(p) + 1;
|
||||
} while (*p);
|
||||
|
||||
Length = p - Environment + sizeof(UNICODE_NULL);
|
||||
Length = p - Environment + 1;
|
||||
|
||||
Status = RtlUnicodeToMultiByteSize(&Size, Environment, Length);
|
||||
Status = RtlUnicodeToMultiByteSize(&Size, Environment, Length * sizeof(WCHAR));
|
||||
if (NT_SUCCESS(Status))
|
||||
{
|
||||
Buffer = RtlAllocateHeap(RtlGetProcessHeap(), 0, Size);
|
||||
if (Buffer)
|
||||
{
|
||||
Status = RtlUnicodeToOemN(Buffer, Size, 0, Environment, Length);
|
||||
Status = RtlUnicodeToOemN(Buffer, Size, 0, Environment, Length * sizeof(WCHAR));
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
RtlFreeHeap(RtlGetProcessHeap(), 0, Buffer);
|
||||
|
@ -344,15 +344,15 @@ GetEnvironmentStringsW(VOID)
|
|||
|
||||
do
|
||||
{
|
||||
p += wcslen(Environment) + 1;
|
||||
p += wcslen(p) + 1;
|
||||
} while (*p);
|
||||
|
||||
Length = p - Environment + sizeof(UNICODE_NULL);
|
||||
Length = p - Environment + 1;
|
||||
|
||||
p = RtlAllocateHeap(RtlGetProcessHeap(), 0, Length);
|
||||
p = RtlAllocateHeap(RtlGetProcessHeap(), 0, Length * sizeof(WCHAR));
|
||||
if (p)
|
||||
{
|
||||
RtlCopyMemory(p, Environment, Length);
|
||||
RtlCopyMemory(p, Environment, Length * sizeof(WCHAR));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue