summaryrefslogtreecommitdiff
path: root/src/plugins/debugger/breakhandler.cpp
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2011-11-04 14:03:48 +0100
committerhjk <qthjk@ovi.com>2011-11-04 16:32:50 +0100
commitccfc4e032a67267e85325882c52912224258a3f0 (patch)
tree306967f9cd071e3b5ed57fee060087643c92d82b /src/plugins/debugger/breakhandler.cpp
parentb0ca56109ec152d6316cc6a5cf8f3600ed555f07 (diff)
downloadqt-creator-ccfc4e032a67267e85325882c52912224258a3f0.tar.gz
debugger: fix manual changing of breakpoint line numbers
Task-number: QTCREATORBUG-6178 Change-Id: I3e0a3cae0ee5df02ad8ceee7222bc667e61774c8 Reviewed-by: Robert Löhning <robert.loehning@nokia.com> Reviewed-by: hjk <qthjk@ovi.com>
Diffstat (limited to 'src/plugins/debugger/breakhandler.cpp')
-rw-r--r--src/plugins/debugger/breakhandler.cpp16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/plugins/debugger/breakhandler.cpp b/src/plugins/debugger/breakhandler.cpp
index 09bf49427c..aea7377e86 100644
--- a/src/plugins/debugger/breakhandler.cpp
+++ b/src/plugins/debugger/breakhandler.cpp
@@ -1230,7 +1230,6 @@ void BreakHandler::gotoLocation(BreakpointModelId id) const
void BreakHandler::updateLineNumberFromMarker(BreakpointModelId id, int lineNumber)
{
Iterator it = m_storage.find(id);
- it->response.pending = false;
BREAK_ASSERT(it != m_storage.end(), return);
// Ignore updates to the "real" line number while the debugger is
// running, as this can be triggered by moving the breakpoint to
@@ -1241,10 +1240,6 @@ void BreakHandler::updateLineNumberFromMarker(BreakpointModelId id, int lineNumb
it->data.lineNumber += lineNumber - it->response.lineNumber;
else
it->data.lineNumber = lineNumber;
- if (it->response.lineNumber != lineNumber) {
- // FIXME: Should we tell gdb about the change?
- it->response.lineNumber = lineNumber;
- }
it->updateMarker(id);
emit layoutChanged();
}
@@ -1335,11 +1330,10 @@ void BreakHandler::changeBreakpointData(BreakpointModelId id,
if (data == it->data)
return;
it->data = data;
- if (parts == NoParts) {
- it->destroyMarker();
- it->updateMarker(id);
- layoutChanged();
- } else if (it->needsChange() && it->engine && it->state != BreakpointNew) {
+ it->destroyMarker();
+ it->updateMarker(id);
+ layoutChanged();
+ if (it->needsChange() && it->engine && it->state != BreakpointNew) {
setState(id, BreakpointChangeRequested);
scheduleSynchronization();
}
@@ -1411,6 +1405,8 @@ bool BreakHandler::BreakpointItem::needsChange() const
return true;
if (data.command != response.command)
return true;
+ if (data.lineNumber != response.lineNumber)
+ return true;
return false;
}