summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-03-11 15:49:34 +0100
committerhjk <hjk121@nokiamail.com>2014-03-11 16:29:28 +0100
commit4202b94dbfe9133ecdabaafae98f73f451f96f1a (patch)
treeec017bcb42a7f9c3e8f65b914cd3c1cfb758caef
parent2d70c2e2123c73ad8235ec1f06fd785f731dfdc7 (diff)
downloadqt-creator-4202b94dbfe9133ecdabaafae98f73f451f96f1a.tar.gz
Debugger: Let creator trigger the locals update also with LLDB
Makes the code path more similar to the GDB side and allows skipping register refreshs when the view is invisible. Change-Id: Ia9210ee1709dbc5c9c7a6870bf8a54484261fee0 Reviewed-by: Christian Stenger <christian.stenger@digia.com>
-rw-r--r--share/qtcreator/debugger/lldbbridge.py3
-rw-r--r--src/plugins/debugger/lldb/lldbengine.cpp6
-rw-r--r--src/plugins/debugger/lldb/lldbengine.h1
3 files changed, 5 insertions, 5 deletions
diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py
index 7ae50e9a37..56a8c09b31 100644
--- a/share/qtcreator/debugger/lldbbridge.py
+++ b/share/qtcreator/debugger/lldbbridge.py
@@ -1281,8 +1281,6 @@ class Dumper(DumperBase):
self.reportStackTop()
self.reportThreads()
self.reportLocation()
- self.reportVariables()
- self.reportRegisters()
self.reportChangedBreakpoints()
elif type == lldb.SBProcess.eBroadcastBitInterrupt:
pass
@@ -1556,7 +1554,6 @@ class Dumper(DumperBase):
state = self.process.GetState()
if state == lldb.eStateStopped:
self.reportStackPosition()
- self.reportVariables()
def selectThread(self, args):
self.process.SetSelectedThreadByID(args['id'])
diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp
index d2bad378b1..2589063fff 100644
--- a/src/plugins/debugger/lldb/lldbengine.cpp
+++ b/src/plugins/debugger/lldb/lldbengine.cpp
@@ -320,7 +320,6 @@ void LldbEngine::setupInferior()
}
runCommand(cmd);
- updateLocals(); // update display options
}
void LldbEngine::runEngine()
@@ -493,6 +492,8 @@ void LldbEngine::activateFrame(int frameIndex)
cmd.arg("thread", threadsHandler()->currentThread().raw());
cmd.arg("stacklimit", limit);
runCommand(cmd);
+
+ updateAll();
}
void LldbEngine::selectThread(ThreadId threadId)
@@ -872,6 +873,7 @@ bool LldbEngine::setToolTipExpression(const QPoint &mousePos,
void LldbEngine::updateAll()
{
+ reloadRegisters();
updateLocals();
}
@@ -1181,6 +1183,8 @@ void LldbEngine::refreshState(const GdbMi &reportedState)
if (m_continueAtNextSpontaneousStop) {
m_continueAtNextSpontaneousStop = false;
continueInferior();
+ } else {
+ updateAll();
}
} else if (newState == "inferiorstopok")
notifyInferiorStopOk();
diff --git a/src/plugins/debugger/lldb/lldbengine.h b/src/plugins/debugger/lldb/lldbengine.h
index df6c132ed1..3d43532d91 100644
--- a/src/plugins/debugger/lldb/lldbengine.h
+++ b/src/plugins/debugger/lldb/lldbengine.h
@@ -184,7 +184,6 @@ private:
typedef void (LldbEngine::*LldbCommandContinuation)();
- void handleStop(const QByteArray &response);
void handleListLocals(const QByteArray &response);
void handleListModules(const QByteArray &response);
void handleListSymbols(const QByteArray &response);