debugger: rewrite parser for cli sub-breakpoint notifications

Change-Id: I971a2af2534bc650e8c604a5c2dc2e1846dbb045
Reviewed-on: http://codereview.qt.nokia.com/592
Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
hjk
2011-06-21 16:45:23 +02:00
committed by hjk
parent a7d8f34679
commit 41df1fb2d3
10 changed files with 206 additions and 104 deletions

View File

@@ -1864,7 +1864,7 @@ unsigned CdbEngine::examineStopReason(const GdbMi &stopReason,
if (id && breakHandler()->engineBreakpointIds(this).contains(id)) {
const BreakpointResponse parameters = breakHandler()->response(id);
// Trace point? Just report.
number = parameters.number;
number = parameters.id.majorPart();
if (parameters.tracepoint) {
*message = msgTracePointTriggered(id, number, QString::number(threadId));
return StopReportLog|StopIgnoreContinue;
@@ -2786,7 +2786,7 @@ void CdbEngine::handleWidgetAt(const CdbExtensionCommandPtr &reply)
static inline void formatCdbBreakPointResponse(BreakpointId id, const BreakpointResponse &r,
QTextStream &str)
{
str << "Obtained breakpoint " << id << " (#" << r.number << ')';
str << "Obtained breakpoint " << id << " (#" << r.id.majorPart() << ')';
if (r.pending) {
str << ", pending";
} else {
@@ -2840,7 +2840,7 @@ void CdbEngine::handleBreakPoints(const GdbMi &value)
if (it != m_pendingBreakpointMap.end()) {
// Complete the response and set on handler.
BreakpointResponse &currentResponse = it.value();
currentResponse.number = reportedResponse.number;
currentResponse.id = reportedResponse.id;
currentResponse.address = reportedResponse.address;
currentResponse.module = reportedResponse.module;
currentResponse.pending = reportedResponse.pending;