diff --git a/src/core/gdbstub/gdbstub.cpp b/src/core/gdbstub/gdbstub.cpp index 2ca0263c23..332e5c3d0d 100644 --- a/src/core/gdbstub/gdbstub.cpp +++ b/src/core/gdbstub/gdbstub.cpp @@ -173,7 +173,7 @@ struct Breakpoint { bool active; VAddr addr; u64 len; - u8 inst[4]; + std::array inst; }; using BreakpointMap = std::map; @@ -454,7 +454,7 @@ static void RemoveBreakpoint(BreakpointType type, VAddr addr) { LOG_DEBUG(Debug_GDBStub, "gdb: removed a breakpoint: {:016X} bytes at {:016X} of type {}", bp->second.len, bp->second.addr, static_cast(type)); - Memory::WriteBlock(bp->second.addr, bp->second.inst, 4); + Memory::WriteBlock(bp->second.addr, bp->second.inst.data(), bp->second.inst.size()); Core::System::GetInstance().InvalidateCpuInstructionCaches(); p.erase(addr); } @@ -994,9 +994,9 @@ static bool CommitBreakpoint(BreakpointType type, VAddr addr, u64 len) { breakpoint.active = true; breakpoint.addr = addr; breakpoint.len = len; - Memory::ReadBlock(addr, breakpoint.inst, 4); - static const u8 btrap[] = {0xd4, 0x20, 0x7d, 0x00}; - Memory::WriteBlock(addr, btrap, 4); + Memory::ReadBlock(addr, breakpoint.inst.data(), breakpoint.inst.size()); + static constexpr std::array btrap{{0xd4, 0x20, 0x7d, 0x0}}; + Memory::WriteBlock(addr, btrap.data(), btrap.size()); Core::System::GetInstance().InvalidateCpuInstructionCaches(); p.insert({addr, breakpoint});