diff --git a/src/plugins/debugger/breakhandler.cpp b/src/plugins/debugger/breakhandler.cpp index ccc367461a2..e3d8e1e107d 100644 --- a/src/plugins/debugger/breakhandler.cpp +++ b/src/plugins/debugger/breakhandler.cpp @@ -744,8 +744,7 @@ void BreakHandler::setEnabled(BreakpointModelId id, bool on) if (it->data.enabled == on) return; it->data.enabled = on; - it->destroyMarker(); - it->updateMarker(id); + it->updateMarkerIcon(); if (it->engine) { it->state = BreakpointChangeRequested; scheduleSynchronization(); @@ -780,8 +779,7 @@ void BreakHandler::setTracepoint(BreakpointModelId id, bool on) if (it->data.tracepoint == on) return; it->data.tracepoint = on; - it->destroyMarker(); - it->updateMarker(id); + it->updateMarkerIcon(); if (it->engine) { it->state = BreakpointChangeRequested; @@ -1414,6 +1412,12 @@ bool BreakHandler::BreakpointItem::isLocatedAt || fileNameMatch(fileName, markerFileName())); } +void BreakHandler::BreakpointItem::updateMarkerIcon() +{ + marker->setIcon(icon()); + marker->updateMarker(); +} + void BreakHandler::BreakpointItem::updateMarker(BreakpointModelId id) { QString file = markerFileName(); diff --git a/src/plugins/debugger/breakhandler.h b/src/plugins/debugger/breakhandler.h index 8c167ac094f..ca003552f91 100644 --- a/src/plugins/debugger/breakhandler.h +++ b/src/plugins/debugger/breakhandler.h @@ -197,6 +197,7 @@ private: bool isLocatedAt(const QString &fileName, int lineNumber, bool useMarkerPosition) const; void updateMarker(BreakpointModelId id); + void updateMarkerIcon(); QString toToolTip() const; QString markerFileName() const; int markerLineNumber() const;