diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp
index 3e4dd61dc6da63e8ef92456c30134d2f6cc6ed0c..0b12d5ae9696af022f063de42f73fd28fb0545c5 100644
--- a/src/core/hle/kernel/svc.cpp
+++ b/src/core/hle/kernel/svc.cpp
@@ -95,12 +95,12 @@ ResultCode MapUnmapMemorySanityChecks(const VMManager& vm_manager, VAddr dst_add
 
     const VAddr dst_end_address = dst_addr + size;
     if (dst_end_address > vm_manager.GetHeapRegionBaseAddress() &&
-        dst_addr < vm_manager.GetHeapRegionEndAddress()) {
+        vm_manager.GetHeapRegionEndAddress() > dst_addr) {
         return ERR_INVALID_MEMORY_RANGE;
     }
 
-    if (dst_end_address > vm_manager.GetNewMapRegionBaseAddress() &&
-        dst_addr < vm_manager.GetMapRegionEndAddress()) {
+    if (dst_end_address > vm_manager.GetMapRegionBaseAddress() &&
+        vm_manager.GetMapRegionEndAddress() > dst_addr) {
         return ERR_INVALID_MEMORY_RANGE;
     }