summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2018-01-20 17:37:55 -0500
committerGravatar GitHub2018-01-20 17:37:55 -0500
commit6cccbf0eb365c9918e09a4965d46e9252c8ec6c4 (patch)
tree4d0cb1088d81c2115c2ad5ed53887681c0364b91 /src
parentMerge pull request #119 from bunnei/desconstucted-loader (diff)
parentmemory: Return false for large VAddr in IsValidVirtualAddress (diff)
downloadyuzu-6cccbf0eb365c9918e09a4965d46e9252c8ec6c4.tar.gz
yuzu-6cccbf0eb365c9918e09a4965d46e9252c8ec6c4.tar.xz
yuzu-6cccbf0eb365c9918e09a4965d46e9252c8ec6c4.zip
Merge pull request #120 from Rozelette/master
memory: Return false for large VAddr in IsValidVirtualAddress
Diffstat (limited to 'src')
-rw-r--r--src/core/memory.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp
index 74a598852..a3d2d4951 100644
--- a/src/core/memory.cpp
+++ b/src/core/memory.cpp
@@ -219,6 +219,9 @@ void Write(const VAddr vaddr, const T data) {
219bool IsValidVirtualAddress(const Kernel::Process& process, const VAddr vaddr) { 219bool IsValidVirtualAddress(const Kernel::Process& process, const VAddr vaddr) {
220 auto& page_table = process.vm_manager.page_table; 220 auto& page_table = process.vm_manager.page_table;
221 221
222 if ((vaddr >> PAGE_BITS) >= PAGE_TABLE_NUM_ENTRIES)
223 return false;
224
222 const u8* page_pointer = page_table.pointers[vaddr >> PAGE_BITS]; 225 const u8* page_pointer = page_table.pointers[vaddr >> PAGE_BITS];
223 if (page_pointer) 226 if (page_pointer)
224 return true; 227 return true;