From 8213e5bda734852dbd9ecc308695ffb65aa87a6f Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Fri, 11 Sep 2009 13:05:37 +0200 Subject: [PATCH] debugger: work on trk. Something's visible in Locals&Watchers now! --- src/plugins/debugger/gdb/gdbengine.cpp | 12 +++++++++++- src/plugins/debugger/symbian/symbianadapter.cpp | 1 + 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 02e84fd6a94..452e9908ec4 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -1078,7 +1078,6 @@ void GdbEngine::handleAsyncOutput(const GdbMi &data) return; } - //MAC: bool isFirstStop = data.findChild("bkptno").data() == "1"; //!MAC: startSymbolName == data.findChild("frame").findChild("func") if (m_waitingForFirstBreakpointToBeHit) { @@ -1292,6 +1291,15 @@ void GdbEngine::handleAsyncOutput2(const GdbMi &data) } } + // FIXME: Hack, remove as soon as we get real stack traces. + if (m_gdbProc->isAdapter()) { + StackFrame f; + f.file = QString::fromLocal8Bit(fullName.data()); + f.line = frame.findChild("line").data().toInt(); + f.address = _(frame.findChild("addr").data()); + q->gotoLocation(f, true); + } + // // Stack // @@ -2051,6 +2059,8 @@ void GdbEngine::sendInsertBreakpoint(int index) // cmd += "-c " + data->condition + " "; #else QString cmd = _("-break-insert -f "); + if (m_gdbProc->isAdapter()) + cmd = _("-break-insert "); //if (!data->condition.isEmpty()) // cmd += _("-c ") + data->condition + ' '; #endif diff --git a/src/plugins/debugger/symbian/symbianadapter.cpp b/src/plugins/debugger/symbian/symbianadapter.cpp index c5ff3dc2b24..212e1d5e18e 100644 --- a/src/plugins/debugger/symbian/symbianadapter.cpp +++ b/src/plugins/debugger/symbian/symbianadapter.cpp @@ -1421,6 +1421,7 @@ void SymbianAdapter::attach(GdbEngine *engine) const .arg(m_session.codeseg)); engine->postCommand(_("symbol-file \"%1\"").arg(fileName)); engine->postCommand(_("target remote ") + gdbServerName()); + engine->attemptBreakpointSynchronization(); #endif } -- GitLab