From 6fd638a53cdb36204ee5c6e6daba74eebf60c40c Mon Sep 17 00:00:00 2001 From: "Alexey.Merkulov" Date: Wed, 11 Feb 2026 17:47:11 +0100 Subject: [PATCH] [debugger] Fixed disable/enable logic for breakpoint instrumentation IDEA-370744 GitOrigin-RevId: 7ef314eacb2aacc162d0c6de5ac1709c958e9a8f --- .../debugger/engine/requests/RequestManagerImpl.java | 5 +++++ .../com/intellij/debugger/ui/breakpoints/LineBreakpoint.java | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/java/debugger/impl/src/com/intellij/debugger/engine/requests/RequestManagerImpl.java b/java/debugger/impl/src/com/intellij/debugger/engine/requests/RequestManagerImpl.java index 56e8574b9ba9..146a5c1c09cc 100644 --- a/java/debugger/impl/src/com/intellij/debugger/engine/requests/RequestManagerImpl.java +++ b/java/debugger/impl/src/com/intellij/debugger/engine/requests/RequestManagerImpl.java @@ -531,4 +531,9 @@ public class RequestManagerImpl extends DebugProcessAdapterImpl implements Reque public @Nullable InstrumentationBreakpointState getInstrumentationInfo(@NotNull Requestor requestor) { return myInstrumentationInfo.get(requestor); } + + @ApiStatus.Internal + public void deleteInstrumentationInfoFor(@NotNull Requestor requestor) { + myInstrumentationInfo.remove(requestor); + } } diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/LineBreakpoint.java b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/LineBreakpoint.java index 23852e76ce02..c7be3aede0fe 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/LineBreakpoint.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/LineBreakpoint.java @@ -138,7 +138,8 @@ public class LineBreakpoint

extends Breakpoi if (myXBreakpoint instanceof XBreakpointBase xBreakpointBase && shouldInstrumentBreakpoint(xBreakpointBase)) { InstrumentationBreakpointState instrumentationBreakpointState = debugProcess.getRequestsManager().getInstrumentationInfo(this); - if (instrumentationBreakpointState != null && instrumentationBreakpointState.isInstrumentationModeEnabled()) { + if (instrumentationBreakpointState != null) { + instrumentationBreakpointState.updateInstrumentationModeEnabled(debugProcess.getRequestsManager(), true); return; } }