From 7020cdc587b8f8a53f373cd7cd8ad2a3d84b2f36 Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 4 Jul 2011 14:08:48 +0200 Subject: [PATCH] debugger: fix parsing of last sub-breakpoint of a breakpoint Last chunk was not added properly. Change-Id: I3999650eabdedcebb412f84b530b5817f2ae1e0d Reviewed-on: http://codereview.qt.nokia.com/1070 Reviewed-by: hjk Reviewed-by: Qt Sanity Bot --- src/plugins/debugger/gdb/gdbengine.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 2227b12ae30..a1ae97da3af 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -2848,7 +2848,7 @@ void GdbEngine::extractDataFromInfoBreak(const QString &output, BreakpointModelI sub.address = address; sub.functionName = QString::fromUtf8(function); sub.setLocation(location); - sub.id = subId; + sub.id = BreakpointResponseId(majorPart, minorPart); sub.type = response.type; sub.address = address; handler->insertSubBreakpoint(id, sub); @@ -2863,7 +2863,20 @@ void GdbEngine::extractDataFromInfoBreak(const QString &output, BreakpointModelI } } } - // Commit main data. + if (minorPart) { + // Commit last chunk. + BreakpointResponse sub; + sub.address = address; + sub.functionName = QString::fromUtf8(function); + sub.setLocation(location); + sub.id = BreakpointResponseId(majorPart, minorPart); + sub.type = response.type; + sub.address = address; + handler->insertSubBreakpoint(id, sub); + location.clear(); + function.clear(); + address = 0; + } } else { qDebug() << "COULD NOT MATCH" << output; response.id = BreakpointResponseId(); // Unavailable.