mirror of
https://github.com/reactos/reactos.git
synced 2024-10-04 00:13:57 +00:00
[RTL]: One day, Microsoft is going to stop using flags that are negatives. Fix boot/etc.
svn path=/trunk/; revision=52620
This commit is contained in:
parent
f9f36696f9
commit
f1c4df527e
|
@ -143,6 +143,7 @@ RtlImageNtHeaderEx(IN ULONG Flags,
|
|||
{
|
||||
PIMAGE_NT_HEADERS NtHeaders;
|
||||
PIMAGE_DOS_HEADER DosHeader;
|
||||
BOOLEAN WantsRangeCheck;
|
||||
|
||||
/* You must want NT Headers, no? */
|
||||
if (!OutHeaders) return STATUS_INVALID_PARAMETER;
|
||||
|
@ -161,7 +162,8 @@ RtlImageNtHeaderEx(IN ULONG Flags,
|
|||
if (!(Base) || (Base == (PVOID)-1)) return STATUS_INVALID_PARAMETER;
|
||||
|
||||
/* Check if the caller wants validation */
|
||||
if (Flags & RTL_IMAGE_NT_HEADER_EX_FLAG_NO_RANGE_CHECK)
|
||||
WantsRangeCheck = !(Flags & RTL_IMAGE_NT_HEADER_EX_FLAG_NO_RANGE_CHECK);
|
||||
if (WantsRangeCheck)
|
||||
{
|
||||
/* Make sure the image size is at least big enough for the DOS header */
|
||||
if (Size < sizeof(IMAGE_DOS_HEADER))
|
||||
|
@ -181,7 +183,7 @@ RtlImageNtHeaderEx(IN ULONG Flags,
|
|||
}
|
||||
|
||||
/* Check if the caller wants validation */
|
||||
if (Flags & RTL_IMAGE_NT_HEADER_EX_FLAG_NO_RANGE_CHECK)
|
||||
if (WantsRangeCheck)
|
||||
{
|
||||
/* The offset should fit in the passsed-in size */
|
||||
if (DosHeader->e_lfanew >= Size)
|
||||
|
|
Loading…
Reference in a new issue