diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2019-06-12 19:22:17 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2019-06-12 19:24:27 -0400 |
commit | 788409adea53a4e7711d26405aab95fd8655d1ce (patch) | |
tree | 77d241e40d5fd2c03b08eba51b5a3ca05bfd7d34 | |
parent | 54b3e04d09dab3c2f7cb3067837a1036463cfaff (diff) |
Fix fatal error when attempting to set watchpoint covering unaligned portions of two adjacent native words
-rw-r--r-- | src/emu/debug/debugcpu.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/emu/debug/debugcpu.cpp b/src/emu/debug/debugcpu.cpp index 73739a44411..7bb39bc112f 100644 --- a/src/emu/debug/debugcpu.cpp +++ b/src/emu/debug/debugcpu.cpp @@ -2846,10 +2846,13 @@ device_debug::watchpoint::watchpoint(device_debug* debugInterface, } else { - m_start_address[idx] = rstart; - m_end_address[idx] = rend - subamask - 1; - m_masks[idx] = mmask; - idx++; + if (rstart < rend - subamask) + { + m_start_address[idx] = rstart; + m_end_address[idx] = rend - subamask - 1; + m_masks[idx] = mmask; + idx++; + } m_start_address[idx] = rend - subamask; m_end_address[idx] = rend; m_masks[idx] = emask; |