aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <qtc-committer@nokia.com>2009-09-02 13:19:47 +0200
committercon <qtc-committer@nokia.com>2009-09-02 17:10:02 +0200
commit238ffd0d6c7b0a1f20b45bd541d8ca7dddaba8f8 (patch)
treeb08735fb2773b7b8ed826ffa819619f112e0b7e0
parent0ed33e5b91518465fcd98be51aa15587a8365a3c (diff)
debugger: fix basic script debugging
Locals view was broken, also unknown entries should not have children. (cherry picked from commit 7ce044031c972e2776f06c749375410d37108e9d)
-rw-r--r--src/plugins/debugger/script/scriptengine.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/debugger/script/scriptengine.cpp b/src/plugins/debugger/script/scriptengine.cpp
index 0765fa3afa..3f31ca421b 100644
--- a/src/plugins/debugger/script/scriptengine.cpp
+++ b/src/plugins/debugger/script/scriptengine.cpp
@@ -608,10 +608,13 @@ void ScriptEngine::updateLocals()
data.iname = "local";
data.name = "local";
data.scriptValue = context->activationObject();
- qq->watchHandler()->insertData(data);
+ qq->watchHandler()->beginCycle();
+ updateSubItem(data);
+ qq->watchHandler()->endCycle();
// FIXME: Use an extra thread. This here is evil
m_stopped = true;
+ q->showStatusMessage(tr("Stopped."), 5000);
while (m_stopped) {
//SDEBUG("LOOPING");
QApplication::processEvents();
@@ -623,7 +626,6 @@ void ScriptEngine::updateWatchData(const WatchData &data)
{
updateSubItem(data);
//qq->watchHandler()->rebuildModel();
- q->showStatusMessage(tr("Stopped."), 5000);
}
void ScriptEngine::updateSubItem(const WatchData &data0)
@@ -679,9 +681,11 @@ void ScriptEngine::updateSubItem(const WatchData &data0)
} else if (ob.isUndefined()) {
data.setType("<undefined>");
data.setValue("<unknown>");
+ data.setHasChildren(false);
} else {
data.setType("<unknown>");
data.setValue("<unknown>");
+ data.setHasChildren(false);
}
qq->watchHandler()->insertData(data);
return;