Cdb: Update locals via doUpdateLocals form DebuggerEngine.

Change-Id: I2178e4d787a4d6811bbe5c6baddd23013954e53f
Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
David Schulz
2015-06-11 12:32:10 +02:00
committed by hjk
parent f79f91fe45
commit ec83581d16
2 changed files with 3 additions and 4 deletions

View File

@@ -1406,8 +1406,9 @@ void CdbEngine::activateFrame(int index)
updateLocals();
}
void CdbEngine::updateLocals()
void CdbEngine::doUpdateLocals(const UpdateParameters &updateParameters)
{
Q_UNUSED(updateParameters)
typedef QHash<QByteArray, int> WatcherHash;
const int frameIndex = stackHandler()->currentIndex();
@@ -1420,7 +1421,6 @@ void CdbEngine::updateLocals()
watchHandler()->removeAllData();
return;
}
watchHandler()->resetValueCache();
/* Watchers: Forcibly discard old symbol group as switching from
* thread 0/frame 0 -> thread 1/assembly -> thread 0/frame 0 will otherwise re-use it
* and cause errors as it seems to go 'stale' when switching threads.
@@ -1469,7 +1469,6 @@ void CdbEngine::updateLocals()
// Required arguments: frame
str << blankSeparator << frameIndex;
watchHandler()->notifyUpdateStarted();
postExtensionCommand("locals", arguments, 0,
[this](const CdbResponse &r) { handleLocals(r, true); });
}

View File

@@ -247,7 +247,7 @@ private:
void handleAdditionalQmlStack(const CdbResponse &response);
NormalizedSourceFileName sourceMapNormalizeFileNameFromDebugger(const QString &f);
void updateLocalVariable(const QByteArray &iname);
void updateLocals();
void doUpdateLocals(const UpdateParameters &params) override;
void updateAll() override;
int elapsedLogTime() const;
void addLocalsOptions(ByteArrayInputStream &s) const;