[KERNEL32]: Code formatting; use the real size of structure members when computing the needed buffer lengths.

svn path=/trunk/; revision=69200
This commit is contained in:
Hermès Bélusca-Maïto 2015-09-12 16:03:53 +00:00
parent d53df6db90
commit 38b81a6049

View file

@ -312,15 +312,18 @@ BaseCheckVDM(IN ULONG BinaryType,
AnsiCmdLine = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->CmdLen + 2); AnsiCmdLine = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->CmdLen + 2);
AnsiAppName = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->AppLen); AnsiAppName = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->AppLen);
AnsiCurDirectory = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->CurDirectoryLen); AnsiCurDirectory = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, CheckVdm->CurDirectoryLen);
if (StartupInfo->lpDesktop) AnsiDesktop = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), if (StartupInfo->lpDesktop)
HEAP_ZERO_MEMORY, AnsiDesktop = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(),
CheckVdm->DesktopLen); HEAP_ZERO_MEMORY,
if (StartupInfo->lpTitle) AnsiTitle = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), CheckVdm->DesktopLen);
HEAP_ZERO_MEMORY, if (StartupInfo->lpTitle)
CheckVdm->TitleLen); AnsiTitle = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(),
if (StartupInfo->lpReserved) AnsiReserved = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY,
HEAP_ZERO_MEMORY, CheckVdm->TitleLen);
CheckVdm->ReservedLen); if (StartupInfo->lpReserved)
AnsiReserved = (PCHAR)RtlAllocateHeap(RtlGetProcessHeap(),
HEAP_ZERO_MEMORY,
CheckVdm->ReservedLen);
if (!AnsiCmdLine if (!AnsiCmdLine
|| !AnsiAppName || !AnsiAppName
@ -411,7 +414,7 @@ BaseCheckVDM(IN ULONG BinaryType,
} }
/* Fill the ANSI startup info structure */ /* Fill the ANSI startup info structure */
RtlCopyMemory(&AnsiStartupInfo, StartupInfo, sizeof(STARTUPINFO)); RtlCopyMemory(&AnsiStartupInfo, StartupInfo, sizeof(AnsiStartupInfo));
AnsiStartupInfo.lpReserved = AnsiReserved; AnsiStartupInfo.lpReserved = AnsiReserved;
AnsiStartupInfo.lpDesktop = AnsiDesktop; AnsiStartupInfo.lpDesktop = AnsiDesktop;
AnsiStartupInfo.lpTitle = AnsiTitle; AnsiStartupInfo.lpTitle = AnsiTitle;
@ -426,7 +429,7 @@ BaseCheckVDM(IN ULONG BinaryType,
+ CheckVdm->TitleLen + CheckVdm->TitleLen
+ CheckVdm->ReservedLen + CheckVdm->ReservedLen
+ CheckVdm->EnvLen + CheckVdm->EnvLen
+ sizeof(STARTUPINFOA)); + sizeof(*CheckVdm->StartupInfo));
if (CaptureBuffer == NULL) if (CaptureBuffer == NULL)
{ {
Status = STATUS_NO_MEMORY; Status = STATUS_NO_MEMORY;
@ -462,7 +465,7 @@ BaseCheckVDM(IN ULONG BinaryType,
/* Capture the startup info structure */ /* Capture the startup info structure */
CsrCaptureMessageBuffer(CaptureBuffer, CsrCaptureMessageBuffer(CaptureBuffer,
&AnsiStartupInfo, &AnsiStartupInfo,
sizeof(STARTUPINFOA), sizeof(*CheckVdm->StartupInfo),
(PVOID*)&CheckVdm->StartupInfo); (PVOID*)&CheckVdm->StartupInfo);
if (StartupInfo->lpDesktop) if (StartupInfo->lpDesktop)
@ -742,7 +745,7 @@ BaseCreateVDMEnvironment(IN PWCHAR lpEnvironment,
// Can be put in some .h ?? // Can be put in some .h ??
#define IS_PATH_SEPARATOR(x) ((x) == L'\\' || (x) == L'/') #define IS_PATH_SEPARATOR(x) ((x) == L'\\' || (x) == L'/')
BOOL Result; BOOL Success = FALSE;
NTSTATUS Status; NTSTATUS Status;
ULONG RegionSize, EnvironmentSize = 0; ULONG RegionSize, EnvironmentSize = 0;
PWCHAR Environment, NewEnvironment = NULL; PWCHAR Environment, NewEnvironment = NULL;
@ -990,7 +993,7 @@ BaseCreateVDMEnvironment(IN PWCHAR lpEnvironment,
else else
{ {
/* Everything went okay, so return success */ /* Everything went okay, so return success */
Result = TRUE; Success = TRUE;
NewEnvironment = NULL; NewEnvironment = NULL;
} }
@ -1015,7 +1018,7 @@ Cleanup:
} }
/* Return the result */ /* Return the result */
return Result; return Success;
} }
BOOL BOOL