From eb5f3f67f62534126e9598e9ea3e165238590b93 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 12 Dec 2018 13:26:33 -0500 Subject: vm_manager: Amend the returned values for invalid memory queries in QueryMemory() The kernel returns a memory info instance with the base address set to the end of the address space, and the size of said block as 0 - address_space_end, it doesn't set both of said members to zero. --- src/core/hle/kernel/vm_manager.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/core/hle/kernel/vm_manager.h') diff --git a/src/core/hle/kernel/vm_manager.h b/src/core/hle/kernel/vm_manager.h index 91e8e8c8c..7befa3526 100644 --- a/src/core/hle/kernel/vm_manager.h +++ b/src/core/hle/kernel/vm_manager.h @@ -105,6 +105,9 @@ enum class MemoryState : u32 { ProcessMemory = 0x0F | FlagIPC3 | FlagIPC1 | FlagMapped | FlagMemoryPoolAllocated, + // Used to signify an inaccessible or invalid memory region with memory queries + Inaccessible = 0x10, + IpcBuffer1 = 0x11 | FlagIPC3 | FlagIPC1 | FlagMapped | FlagQueryPhysicalAddressAllowed | FlagSharedDevice | FlagSharedDeviceAligned | FlagMemoryPoolAllocated, -- cgit v1.2.3