summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Lioncash2019-03-04 17:16:47 -0500
committerGravatar Lioncash2019-03-04 17:16:52 -0500
commit40de7f6fe86358e76244ed14c33752b4b9cd0cf0 (patch)
treedf12fb963298cb4f7be7f38305b1a07ed847ff1e /src
parentvm_manager: Provide address range checking functions for other memory regions (diff)
downloadyuzu-40de7f6fe86358e76244ed14c33752b4b9cd0cf0.tar.gz
yuzu-40de7f6fe86358e76244ed14c33752b4b9cd0cf0.tar.xz
yuzu-40de7f6fe86358e76244ed14c33752b4b9cd0cf0.zip
vm_manager: Use range helpers in HeapAlloc() and HeapFree()
Significantly tidies up two guard conditionals.
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/kernel/vm_manager.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/core/hle/kernel/vm_manager.cpp b/src/core/hle/kernel/vm_manager.cpp
index e81856bdc..05c59af34 100644
--- a/src/core/hle/kernel/vm_manager.cpp
+++ b/src/core/hle/kernel/vm_manager.cpp
@@ -257,8 +257,7 @@ ResultCode VMManager::ReprotectRange(VAddr target, u64 size, VMAPermission new_p
257} 257}
258 258
259ResultVal<VAddr> VMManager::HeapAllocate(VAddr target, u64 size, VMAPermission perms) { 259ResultVal<VAddr> VMManager::HeapAllocate(VAddr target, u64 size, VMAPermission perms) {
260 if (target < GetHeapRegionBaseAddress() || target + size > GetHeapRegionEndAddress() || 260 if (!IsWithinHeapRegion(target, size)) {
261 target + size < target) {
262 return ERR_INVALID_ADDRESS; 261 return ERR_INVALID_ADDRESS;
263 } 262 }
264 263
@@ -293,8 +292,7 @@ ResultVal<VAddr> VMManager::HeapAllocate(VAddr target, u64 size, VMAPermission p
293} 292}
294 293
295ResultCode VMManager::HeapFree(VAddr target, u64 size) { 294ResultCode VMManager::HeapFree(VAddr target, u64 size) {
296 if (target < GetHeapRegionBaseAddress() || target + size > GetHeapRegionEndAddress() || 295 if (!IsWithinHeapRegion(target, size)) {
297 target + size < target) {
298 return ERR_INVALID_ADDRESS; 296 return ERR_INVALID_ADDRESS;
299 } 297 }
300 298