Memory: Fix unmapping of pages

master
Yuri Kunde Schlesner 2015-07-09 22:47:27 +07:00
parent 34f5f77507
commit 51820691e7
1 changed files with 2 additions and 4 deletions

@ -59,13 +59,11 @@ static void MapPages(u32 base, u32 size, u8* memory, PageType type) {
while (base != end) { while (base != end) {
ASSERT_MSG(base < PageTable::NUM_ENTRIES, "out of range mapping at %08X", base); ASSERT_MSG(base < PageTable::NUM_ENTRIES, "out of range mapping at %08X", base);
if (current_page_table->attributes[base] != PageType::Unmapped && type != PageType::Unmapped) {
LOG_ERROR(HW_Memory, "overlapping memory ranges at %08X", base * PAGE_SIZE);
}
current_page_table->attributes[base] = type; current_page_table->attributes[base] = type;
current_page_table->pointers[base] = memory; current_page_table->pointers[base] = memory;
base += 1; base += 1;
if (memory != nullptr)
memory += PAGE_SIZE; memory += PAGE_SIZE;
} }
} }