diff options
| author | Tilka <tilkax@gmail.com> | 2020-08-08 20:59:48 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-08 20:59:48 +0100 |
| commit | 3101d957b6044bc3b5135fbfd3290c85eea6a79a (patch) | |
| tree | 6752c7fd41bfbafb990e8eb6302800716d45fa5d /Source | |
| parent | 6356cc8b08a8e5ef1f841d696f38bab6c68bf009 (diff) | |
| parent | 364ef76ba12cfae40397e29d3ff6b1cba8eb4826 (diff) | |
Merge pull request #8886 from JosJuice/stack-check-instruction
PatchEngine: Attempt to fix crash in IsStackSane
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/Core/PatchEngine.cpp | 3 | ||||
| -rw-r--r-- | Source/Core/Core/PowerPC/MMU.cpp | 3 |
2 files changed, 3 insertions, 3 deletions
diff --git a/Source/Core/Core/PatchEngine.cpp b/Source/Core/Core/PatchEngine.cpp index c416996d25..b2cfa92327 100644 --- a/Source/Core/Core/PatchEngine.cpp +++ b/Source/Core/Core/PatchEngine.cpp @@ -231,7 +231,8 @@ static bool IsStackSane() // Check the link register makes sense (that it points to a valid IBAT address) const u32 address = PowerPC::HostRead_U32(next_SP + 4); - return PowerPC::HostIsInstructionRAMAddress(address) && 0 != PowerPC::HostRead_U32(address); + return PowerPC::HostIsInstructionRAMAddress(address) && + 0 != PowerPC::HostRead_Instruction(address); } bool ApplyFramePatches() diff --git a/Source/Core/Core/PowerPC/MMU.cpp b/Source/Core/Core/PowerPC/MMU.cpp index 5a008f92fc..937cf02fd0 100644 --- a/Source/Core/Core/PowerPC/MMU.cpp +++ b/Source/Core/Core/PowerPC/MMU.cpp @@ -423,8 +423,7 @@ TryReadInstResult TryReadInstruction(u32 address) u32 HostRead_Instruction(const u32 address) { - UGeckoInstruction inst = HostRead_U32(address); - return inst.hex; + return ReadFromHardware<XCheckTLBFlag::OpcodeNoException, u32>(address); } static void Memcheck(u32 address, u32 var, bool write, size_t size) |
