aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/lldb/lldbengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/debugger/lldb/lldbengine.cpp')
-rw-r--r--src/plugins/debugger/lldb/lldbengine.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp
index 61d9012ccb..03c6bdf7fa 100644
--- a/src/plugins/debugger/lldb/lldbengine.cpp
+++ b/src/plugins/debugger/lldb/lldbengine.cpp
@@ -314,6 +314,11 @@ void LldbEngine::setupEngine()
const bool success = response.data["success"].toInt();
if (success) {
BreakpointManager::claimBreakpointsForEngine(this);
+ // Some extra roundtrip to make sure we end up behind all commands triggered
+ // from claimBreakpointsForEngine().
+ DebuggerCommand cmd3("executeRoundtrip");
+ cmd3.callback = [this](const DebuggerResponse &) { notifyEngineSetupOk(); };
+ runCommand(cmd3);
} else {
notifyEngineSetupFailed();
}
@@ -402,6 +407,8 @@ void LldbEngine::handleResponse(const QString &response)
notifyInferiorPid(item.toProcessHandle());
else if (name == "breakpointmodified")
handleInterpreterBreakpointModified(item);
+ else if (name == "bridgemessage")
+ showMessage(item["msg"].data(), item["channel"].toInt());
}
}
@@ -673,7 +680,7 @@ void LldbEngine::requestModuleSymbols(const QString &moduleName)
{
DebuggerCommand cmd("fetchSymbols");
cmd.arg("module", moduleName);
- cmd.callback = [this, moduleName](const DebuggerResponse &response) {
+ cmd.callback = [moduleName](const DebuggerResponse &response) {
const GdbMi &symbols = response.data["symbols"];
QString moduleName = response.data["module"].data();
Symbols syms;
@@ -903,8 +910,6 @@ void LldbEngine::handleStateNotification(const GdbMi &item)
notifyInferiorStopFailed();
else if (newState == "inferiorill")
notifyInferiorIll();
- else if (newState == "enginesetupok")
- notifyEngineSetupOk();
else if (newState == "enginesetupfailed") {
Core::AsynchronousMessageBox::critical(adapterStartFailed(),
item["error"].data());