diff options
author | Lioncash <mathew1800@gmail.com> | 2019-03-29 23:01:38 +0100 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2019-03-29 23:16:19 +0100 |
commit | c6147a439d16112a0794b3fb98e825a9be864066 (patch) | |
tree | 5471089bf0b6b0b58517325fef2c6b0a634ac9cc /src/core/hle/kernel/shared_memory.cpp | |
parent | Merge pull request #2266 from FernandoS27/arbitration (diff) | |
download | yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar.gz yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar.bz2 yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar.lz yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar.xz yuzu-c6147a439d16112a0794b3fb98e825a9be864066.tar.zst yuzu-c6147a439d16112a0794b3fb98e825a9be864066.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/shared_memory.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/core/hle/kernel/shared_memory.cpp b/src/core/hle/kernel/shared_memory.cpp index 62861da36..273e6a25e 100644 --- a/src/core/hle/kernel/shared_memory.cpp +++ b/src/core/hle/kernel/shared_memory.cpp @@ -119,7 +119,15 @@ ResultCode SharedMemory::Map(Process& target_process, VAddr address, MemoryPermi ConvertPermissions(permissions)); } -ResultCode SharedMemory::Unmap(Process& target_process, VAddr address) { +ResultCode SharedMemory::Unmap(Process& target_process, VAddr address, u64 unmap_size) { + if (unmap_size != size) { + LOG_ERROR(Kernel, + "Invalid size passed to Unmap. Size must be equal to the size of the " + "memory managed. Shared memory size=0x{:016X}, Unmap size=0x{:016X}", + size, unmap_size); + return ERR_INVALID_SIZE; + } + // TODO(Subv): Verify what happens if the application tries to unmap an address that is not // mapped to a SharedMemory. return target_process.VMManager().UnmapRange(address, size); |