forked from qt-creator/qt-creator
Merge remote-tracking branch 'origin/2.7'
Conflicts: doc/src/debugger/qtquick-debugger-example.qdoc Change-Id: If9a6ac2db76773c50aae26c5156e6aa2603329b3
This commit is contained in:
@@ -1640,6 +1640,15 @@ void QmlV8DebuggerClient::setCurrentFrameDetails(const QVariant &bodyVal, const
|
||||
d->clearCache();
|
||||
|
||||
const int frameIndex = stackHandler->currentIndex();
|
||||
QSet<QByteArray> expandedInames = watchHandler->expandedINames();
|
||||
QHash<quint64, QByteArray> handlesToLookup;
|
||||
// Store handles of all expanded watch data
|
||||
foreach (const QByteArray &iname, expandedInames) {
|
||||
const WatchData *wd = watchHandler->findData(iname);
|
||||
if (!wd || !wd->isLocal())
|
||||
continue;
|
||||
handlesToLookup.insert(wd->id, iname);
|
||||
}
|
||||
watchHandler->removeAllData();
|
||||
if (frameIndex < 0)
|
||||
return;
|
||||
@@ -1678,6 +1687,11 @@ void QmlV8DebuggerClient::setCurrentFrameDetails(const QVariant &bodyVal, const
|
||||
d->scope(scopeIndex);
|
||||
}
|
||||
d->engine->gotoLocation(stackHandler->currentFrame());
|
||||
|
||||
// Expand watch data that were previously expanded
|
||||
QHash<quint64, QByteArray>::const_iterator itEnd = handlesToLookup.end();
|
||||
for (QHash<quint64, QByteArray>::const_iterator it = handlesToLookup.begin(); it != itEnd; ++it)
|
||||
expandObject(it.value(), it.key());
|
||||
emit stackFrameCompleted();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user