From 73cb3d87f43a98dab1d9680f01b1a7b67aa41a31 Mon Sep 17 00:00:00 2001 From: Martin Date: Sun, 21 Apr 2024 19:36:49 +0200 Subject: [PATCH] LazDebuggerFp: avoid calling QuickPause twice. --- .../lazdebuggers/lazdebuggerfp/fpdebugdebugger.pas | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/components/lazdebuggers/lazdebuggerfp/fpdebugdebugger.pas b/components/lazdebuggers/lazdebuggerfp/fpdebugdebugger.pas index 141aaa6712..1d659d9c3a 100644 --- a/components/lazdebuggers/lazdebuggerfp/fpdebugdebugger.pas +++ b/components/lazdebuggers/lazdebuggerfp/fpdebugdebugger.pas @@ -2094,8 +2094,10 @@ end; procedure TFPBreakpoint.DoPropertiesChanged(AChanged: TDbgBpChangeIndicators); var ADebugger: TFpDebugDebugger; + PauseReq: Boolean; begin ADebugger := TFpDebugDebugger(Debugger); + PauseReq := False; if ciLocation in AChanged then begin if Enabled then begin @@ -2105,6 +2107,7 @@ begin end else if (ADebugger.State = dsRun) then begin ADebugger.QuickPause; + PauseReq := True; end; end; end; @@ -2120,8 +2123,10 @@ begin end; end else if (ADebugger.State = dsRun) then begin - if Enabled and (not FIsSet) then - ADebugger.QuickPause + if Enabled and (not FIsSet) then begin + if not PauseReq then + ADebugger.QuickPause; + end else if (not Enabled) and FIsSet then ADebugger.FRunQuickPauseTasks := True;