diff options
-rw-r--r-- | src/plugins/debugger/debuggerengine.cpp | 9 | ||||
-rw-r--r-- | src/plugins/debugger/debuggerengine.h | 1 | ||||
-rw-r--r-- | src/plugins/debugger/watchhandler.cpp | 2 |
3 files changed, 11 insertions, 1 deletions
diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp index 5c13d88017..57580df85c 100644 --- a/src/plugins/debugger/debuggerengine.cpp +++ b/src/plugins/debugger/debuggerengine.cpp @@ -2043,6 +2043,15 @@ void DebuggerEngine::updateItem(const QByteArray &iname) doUpdateLocals(params); } +void DebuggerEngine::updateWatchData(const QByteArray &iname) +{ + // This is used in cases where re-evaluation is ok for the same iname + // e.g. when changing the expression in a watcher. + UpdateParameters params; + params.partialVariable = iname; + doUpdateLocals(params); +} + void DebuggerEngine::expandItem(const QByteArray &iname) { updateItem(iname); diff --git a/src/plugins/debugger/debuggerengine.h b/src/plugins/debugger/debuggerengine.h index 4d82620f6e..86f7a56721 100644 --- a/src/plugins/debugger/debuggerengine.h +++ b/src/plugins/debugger/debuggerengine.h @@ -197,6 +197,7 @@ public: virtual bool canHandleToolTip(const DebuggerToolTipContext &) const; virtual void expandItem(const QByteArray &iname); // Called when item in tree gets expanded. virtual void updateItem(const QByteArray &iname); // Called for fresh watch items. + void updateWatchData(const QByteArray &iname); // FIXME: Merge with above. virtual void selectWatchData(const QByteArray &iname); virtual void startDebugger(DebuggerRunControl *runControl); diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index 18786f2cf0..bcbeffbaaa 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -1445,7 +1445,7 @@ void WatchHandler::watchExpression(const QString &exp0, const QString &name) item->setValue(QString(QLatin1Char(' '))); item->update(); } else { - m_model->m_engine->updateItem(item->iname); + m_model->m_engine->updateWatchData(item->iname); } updateWatchersWindow(); } |