void (final XBreakpoint<?> breakpoint) { XDependentBreakpointManager dependentBreakpointManager = myDebuggerManager.getBreakpointManager().getDependentBreakpointManager(); if (!dependentBreakpointManager.isMasterOrSlave(breakpoint)) return; List<XBreakpoint<?>> breakpoints = dependentBreakpointManager.getSlaveBreakpoints(breakpoint); breakpoints.forEach(myInactiveSlaveBreakpoints::remove); for (XBreakpoint<?> slaveBreakpoint : breakpoints) { processAllHandlers(slaveBreakpoint, true); } if (dependentBreakpointManager.getMasterBreakpoint(breakpoint) != null && !dependentBreakpointManager.isLeaveEnabled(breakpoint)) { boolean added = myInactiveSlaveBreakpoints.add(breakpoint); if (added) { processAllHandlers(breakpoint, false); myDebuggerManager.getBreakpointManager().getLineBreakpointManager().queueBreakpointUpdate(breakpoint); } } }