linux debugger: fixed step out

This commit is contained in:
Ivan Bondarev 2023-09-24 11:37:51 +02:00
parent ddea099b07
commit 26aa4b6c05
2 changed files with 6 additions and 13 deletions

View file

@ -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();
}
}

View file

@ -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 {