Make SetPatch responsible for overwriting old patches

This commit is contained in:
JoshuaMK 2022-10-23 18:44:12 -05:00
parent 2594447c25
commit e2f4400f49
2 changed files with 2 additions and 3 deletions

View File

@ -32,6 +32,7 @@ void MemoryPatches::SetPatch(u32 address, u32 value)
void MemoryPatches::SetPatch(u32 address, std::vector<u8> value)
{
UnsetPatch(address);
const std::size_t index = m_patches.size();
m_patches.emplace_back(address, std::move(value));
Patch(index);

View File

@ -513,7 +513,6 @@ void CodeViewWidget::SetAddress(u32 address, SetAddressUpdate update)
void CodeViewWidget::ReplaceAddress(u32 address, ReplaceWith replace)
{
PowerPC::debug_interface.UnsetPatch(address);
PowerPC::debug_interface.SetPatch(address, replace == ReplaceWith::BLR ? 0x4e800020 : 0x60000000);
Update();
}
@ -823,7 +822,6 @@ void CodeViewWidget::OnReplaceInstruction()
if (dialog.exec() == QDialog::Accepted)
{
PowerPC::debug_interface.UnsetPatch(addr);
PowerPC::debug_interface.SetPatch(addr, dialog.GetCode());
Update();
}