Commit cc611e07 authored by hjk's avatar hjk

Debugger: Pass autoderef pointers down to LLDB machinery

Change-Id: I282e78c352066ddd05e96199fd8ead088e3e9f56
Reviewed-by: default avatarhjk <hjk121@nokiamail.com>
parent d7f96e32
......@@ -504,6 +504,7 @@ class Dumper:
self.useLldbDumpers = False
self.ns = ""
self.autoDerefPointers = True
self.useDynamicType = True
self.useLoop = True
self.currentIName = None
......
......@@ -84,6 +84,17 @@ LldbEngine::LldbEngine(const DebuggerStartParameters &startParameters)
m_lastAgentId = 0;
m_lastToken = 0;
setObjectName(QLatin1String("LldbEngine"));
connect(debuggerCore()->action(AutoDerefPointers), SIGNAL(valueChanged(QVariant)),
SLOT(updateLocals()));
connect(debuggerCore()->action(CreateFullBacktrace), SIGNAL(triggered()),
SLOT(updateAll()));
connect(debuggerCore()->action(UseDebuggingHelpers), SIGNAL(valueChanged(QVariant)),
SLOT(updateLocals()));
connect(debuggerCore()->action(UseDynamicType), SIGNAL(valueChanged(QVariant)),
SLOT(updateLocals()));
connect(debuggerCore()->action(IntelFlavor), SIGNAL(valueChanged(QVariant)),
SLOT(updateAll()));
}
LldbEngine::~LldbEngine()
......@@ -654,6 +665,10 @@ bool LldbEngine::setToolTipExpression(const QPoint &mousePos,
return false;
}
void LldbEngine::updateAll()
{
updateLocals();
}
//////////////////////////////////////////////////////////////////////
//
......@@ -677,6 +692,11 @@ void LldbEngine::updateWatchData(const WatchData &data, const WatchUpdateFlags &
{
Q_UNUSED(data);
Q_UNUSED(flags);
updateLocals();
}
void LldbEngine::updateLocals()
{
WatchHandler *handler = watchHandler();
Command cmd("updateData");
......@@ -873,11 +893,6 @@ QByteArray LldbEngine::currentOptions() const
return result;
}
void LldbEngine::updateAll()
{
runCommand("reportData");
}
void LldbEngine::refreshLocals(const GdbMi &vars)
{
//const bool partial = response.cookie.toBool();
......
......@@ -153,6 +153,8 @@ private:
Q_SLOT void readLldbStandardError();
Q_SLOT void handleResponse(const QByteArray &data);
Q_SLOT void runEngine2();
Q_SLOT void updateAll();
Q_SLOT void updateLocals();
void refreshAll(const GdbMi &all);
void refreshThreads(const GdbMi &threads);
void refreshStack(const GdbMi &stack);
......@@ -167,8 +169,6 @@ private:
void refreshBreakpoints(const GdbMi &bkpts);
void runContinuation(const GdbMi &data);
void updateAll();
typedef void (LldbEngine::*LldbCommandContinuation)();
QByteArray currentOptions() const;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment