From 26aa4b6c05b1c968db4a2f82e754e82e73720ce1 Mon Sep 17 00:00:00 2001 From: Ivan Bondarev Date: Sun, 24 Sep 2023 11:37:51 +0200 Subject: [PATCH] linux debugger: fixed step out --- VisualPascalABCNETLinux/IB/Debugger/Debugger.cs | 14 +------------- .../MonoDebugging/Soft/SoftDebuggerSession.cs | 5 +++++ 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/VisualPascalABCNETLinux/IB/Debugger/Debugger.cs b/VisualPascalABCNETLinux/IB/Debugger/Debugger.cs index b4011b82e..ac3bc288a 100644 --- a/VisualPascalABCNETLinux/IB/Debugger/Debugger.cs +++ b/VisualPascalABCNETLinux/IB/Debugger/Debugger.cs @@ -2025,18 +2025,6 @@ namespace VisualPascalABC try { workbench.WidgetController.SetStartDebugDisabled(); - /*if (monoDebuggerSession.ActiveThread.Backtrace.GetFrame(0).SourceLocation.MethodName == ".cctor") - { - var sequencePoints = debuggedProcess.SelectedFunction.symMethod.SequencePoints; - if (sequencePoints != null && debuggedProcess.NextStatement.StartLine == sequencePoints[sequencePoints.Length-1].Line) - { - debuggedProcess.StepOut(); - } - else - debuggedProcess.StepOver(); - } - else - debuggedProcess.StepOver();*/ CurrentLineBookmark.Remove(); monoDebuggerSession.NextLine(); @@ -2101,7 +2089,7 @@ namespace VisualPascalABC if (IsRunning) { workbench.WidgetController.SetStartDebugDisabled(); - dbg.Processes[0].StepOut(); + monoDebuggerSession.StepOut(); CurrentLineBookmark.Remove(); } } diff --git a/VisualPascalABCNETLinux/MonoDebugging/Soft/SoftDebuggerSession.cs b/VisualPascalABCNETLinux/MonoDebugging/Soft/SoftDebuggerSession.cs index cc5742734..60428d7a2 100644 --- a/VisualPascalABCNETLinux/MonoDebugging/Soft/SoftDebuggerSession.cs +++ b/VisualPascalABCNETLinux/MonoDebugging/Soft/SoftDebuggerSession.cs @@ -1715,6 +1715,11 @@ namespace Mono.Debugging.Soft Step (StepDepth.Over, StepSize.Line); } + public void StepOut() + { + Step(StepDepth.Out, StepSize.Line); + } + void Step (StepDepth depth, StepSize size) { try {