diff --git a/reactos/ntoskrnl/mm/virtual.c b/reactos/ntoskrnl/mm/virtual.c index 4f254ba2bf9..7bca992294f 100644 --- a/reactos/ntoskrnl/mm/virtual.c +++ b/reactos/ntoskrnl/mm/virtual.c @@ -966,7 +966,8 @@ MmSecureVirtualMemory(PVOID Address, if ( ( (DWORD)Address + Length > (DWORD)MmHighestUserAddress) || ( (DWORD)Address + Length <= (DWORD)Address ) ) /* Only works for user space */ - if (MmHighestUserAddress < Address) + if (((ULONG_PTR)Address > (ULONG_PTR)Address + Length) || + ((ULONG_PTR)MmHighestUserAddress < (ULONG_PTR)Address + Length)) { return NULL; }