diff --git a/src/plugins/debugger/breakhandler.cpp b/src/plugins/debugger/breakhandler.cpp index 023d0120cc9..d8b82cd571d 100644 --- a/src/plugins/debugger/breakhandler.cpp +++ b/src/plugins/debugger/breakhandler.cpp @@ -1330,7 +1330,12 @@ void DebuggerEngine::notifyBreakpointInsertOk(const Breakpoint &bp) void DebuggerEngine::notifyBreakpointInsertFailed(const Breakpoint &bp) { QTC_ASSERT(bp, return); + GlobalBreakpoint gbp = bp->globalBreakpoint(); bp->gotoState(BreakpointDead, BreakpointInsertionProceeding); + breakHandler()->removeDisassemblerMarker(bp); + breakHandler()->destroyItem(bp); + QTC_ASSERT(gbp, return); + gbp->updateMarker(); } void DebuggerEngine::notifyBreakpointRemoveProceeding(const Breakpoint &bp) diff --git a/src/plugins/debugger/breakhandler.h b/src/plugins/debugger/breakhandler.h index 55a4bfd9bd2..f0ee77b8727 100644 --- a/src/plugins/debugger/breakhandler.h +++ b/src/plugins/debugger/breakhandler.h @@ -93,6 +93,7 @@ private: friend class BreakHandler; friend class BreakpointManager; friend class BreakpointMarker; + friend class DebuggerEngine; void updateMarker(); void updateMarkerIcon();