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: ...@@ -504,6 +504,7 @@ class Dumper:
self.useLldbDumpers = False self.useLldbDumpers = False
self.ns = "" self.ns = ""
self.autoDerefPointers = True self.autoDerefPointers = True
self.useDynamicType = True
self.useLoop = True self.useLoop = True
self.currentIName = None self.currentIName = None
......
...@@ -84,6 +84,17 @@ LldbEngine::LldbEngine(const DebuggerStartParameters &startParameters) ...@@ -84,6 +84,17 @@ LldbEngine::LldbEngine(const DebuggerStartParameters &startParameters)
m_lastAgentId = 0; m_lastAgentId = 0;
m_lastToken = 0; m_lastToken = 0;
setObjectName(QLatin1String("LldbEngine")); 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() LldbEngine::~LldbEngine()
...@@ -654,6 +665,10 @@ bool LldbEngine::setToolTipExpression(const QPoint &mousePos, ...@@ -654,6 +665,10 @@ bool LldbEngine::setToolTipExpression(const QPoint &mousePos,
return false; return false;
} }
void LldbEngine::updateAll()
{
updateLocals();
}
////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////
// //
...@@ -677,6 +692,11 @@ void LldbEngine::updateWatchData(const WatchData &data, const WatchUpdateFlags & ...@@ -677,6 +692,11 @@ void LldbEngine::updateWatchData(const WatchData &data, const WatchUpdateFlags &
{ {
Q_UNUSED(data); Q_UNUSED(data);
Q_UNUSED(flags); Q_UNUSED(flags);
updateLocals();
}
void LldbEngine::updateLocals()
{
WatchHandler *handler = watchHandler(); WatchHandler *handler = watchHandler();
Command cmd("updateData"); Command cmd("updateData");
...@@ -873,11 +893,6 @@ QByteArray LldbEngine::currentOptions() const ...@@ -873,11 +893,6 @@ QByteArray LldbEngine::currentOptions() const
return result; return result;
} }
void LldbEngine::updateAll()
{
runCommand("reportData");
}
void LldbEngine::refreshLocals(const GdbMi &vars) void LldbEngine::refreshLocals(const GdbMi &vars)
{ {
//const bool partial = response.cookie.toBool(); //const bool partial = response.cookie.toBool();
......
...@@ -153,6 +153,8 @@ private: ...@@ -153,6 +153,8 @@ private:
Q_SLOT void readLldbStandardError(); Q_SLOT void readLldbStandardError();
Q_SLOT void handleResponse(const QByteArray &data); Q_SLOT void handleResponse(const QByteArray &data);
Q_SLOT void runEngine2(); Q_SLOT void runEngine2();
Q_SLOT void updateAll();
Q_SLOT void updateLocals();
void refreshAll(const GdbMi &all); void refreshAll(const GdbMi &all);
void refreshThreads(const GdbMi &threads); void refreshThreads(const GdbMi &threads);
void refreshStack(const GdbMi &stack); void refreshStack(const GdbMi &stack);
...@@ -167,8 +169,6 @@ private: ...@@ -167,8 +169,6 @@ private:
void refreshBreakpoints(const GdbMi &bkpts); void refreshBreakpoints(const GdbMi &bkpts);
void runContinuation(const GdbMi &data); void runContinuation(const GdbMi &data);
void updateAll();
typedef void (LldbEngine::*LldbCommandContinuation)(); typedef void (LldbEngine::*LldbCommandContinuation)();
QByteArray currentOptions() const; 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