diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 39f7c7181f3..13813be7c4c 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -3416,6 +3416,12 @@ void GdbEngine::handleStackFrame2(const GdbResponse &response) out.chop(1); //qDebug() << "SECOND CHUNK: " << out; out = m_firstChunk + out; + int pos = out.indexOf("locals="); + if (pos != 0) { + qDebug() << "DICARDING JUNK AT BEGIN OF RESPONSE: " + << out.left(pos); + out = out.mid(pos); + } GdbMi all("[" + out + "]"); //GdbMi all(out); diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index 391f93374a5..a0f524abcab 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -1102,7 +1102,7 @@ void WatchHandler::insertData(const WatchData &data) qWarning("%s:%d: Attempt to insert invalid watch item: %s", __FILE__, __LINE__, qPrintable(data.toString())); return; } - if (data.isSomethingNeeded()) { + if (data.isSomethingNeeded() && data.iname.contains('.')) { MODEL_DEBUG("SOMETHING NEEDED: " << data.toString()); m_manager->updateWatchData(data); } else { diff --git a/src/plugins/debugger/watchutils.cpp b/src/plugins/debugger/watchutils.cpp index fbc68f04fa9..6fe9256b744 100644 --- a/src/plugins/debugger/watchutils.cpp +++ b/src/plugins/debugger/watchutils.cpp @@ -431,7 +431,7 @@ QString decodeData(const QByteArray &ba, int encoding) case 5: { // base64 encoded 8 bit data, without quotes (see 1) return quoteUnprintableLatin1(QByteArray::fromBase64(ba)); } - case 7: { // %04x endoded 16 bit data + case 7: { // %04x encoded 16 bit data const QChar doubleQuote(QLatin1Char('"')); const QByteArray decodedBa = QByteArray::fromHex(ba); //qDebug() << quoteUnprintableLatin1(decodedBa) << "\n\n";