From a574032c8f3bbcbac02db7f1a05c05e26efdc646 Mon Sep 17 00:00:00 2001 From: Sour Date: Wed, 5 Feb 2025 17:36:24 +0900 Subject: [PATCH] Debugger: Fixed crash when trying to use the "Edit selected code" on a block start/end header --- UI/Debugger/ViewModels/AssemblerWindowViewModel.cs | 4 +++- UI/Debugger/ViewModels/DisassemblyViewModel.cs | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/UI/Debugger/ViewModels/AssemblerWindowViewModel.cs b/UI/Debugger/ViewModels/AssemblerWindowViewModel.cs index 0cad7584..043e1bfa 100644 --- a/UI/Debugger/ViewModels/AssemblerWindowViewModel.cs +++ b/UI/Debugger/ViewModels/AssemblerWindowViewModel.cs @@ -97,7 +97,9 @@ namespace Mesen.Debugger.ViewModels StartAddress = address; Code = code; - _originalCode = DebugApi.GetMemoryValues(CpuType.ToMemoryType(), (uint)StartAddress, (uint)(StartAddress + OriginalByteCount - 1)); + if(OriginalByteCount > 0) { + _originalCode = DebugApi.GetMemoryValues(CpuType.ToMemoryType(), (uint)StartAddress, (uint)(StartAddress + OriginalByteCount - 1)); + } } private void UpdateAssembly(string code) diff --git a/UI/Debugger/ViewModels/DisassemblyViewModel.cs b/UI/Debugger/ViewModels/DisassemblyViewModel.cs index 91d35693..3b9812e0 100644 --- a/UI/Debugger/ViewModels/DisassemblyViewModel.cs +++ b/UI/Debugger/ViewModels/DisassemblyViewModel.cs @@ -393,7 +393,11 @@ namespace Mesen.Debugger.ViewModels } } while(i < SelectionEnd); - byteCount = endAddress - SelectionStart + 1; + if(SelectionStart <= endAddress) { + byteCount = endAddress - SelectionStart + 1; + } else { + byteCount = 0; + } return sb.ToString(); }