From a6c94a0eafba8b73680f38144cd102572342848e Mon Sep 17 00:00:00 2001 From: Eladash Date: Thu, 1 Aug 2019 22:32:08 +0300 Subject: [PATCH] Fix possible infinite loop on vm area searching (sys_mmapper_allocate_address) Specifically when allocation with 0x8000'0000 alignment fails. --- rpcs3/Emu/Memory/vm.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpcs3/Emu/Memory/vm.cpp b/rpcs3/Emu/Memory/vm.cpp index 063577b868..1347779fb3 100644 --- a/rpcs3/Emu/Memory/vm.cpp +++ b/rpcs3/Emu/Memory/vm.cpp @@ -913,7 +913,7 @@ namespace vm static std::shared_ptr _find_map(u32 size, u32 align, u64 flags) { - for (u32 addr = ::align(0x20000000, align); addr < 0xC0000000; addr += align) + for (u32 addr = ::align(0x20000000, align); addr - 1 < 0xC0000000 - 1; addr += align) { if (_test_map(addr, size)) {