From 0caf52f6d485998e8264232d2e821fa7d130546b Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Wed, 10 Nov 2010 12:38:29 +0100 Subject: [PATCH] debugger: remove recently introduced endless loop in resetLocation() --- src/plugins/debugger/debuggercore.h | 2 ++ src/plugins/debugger/debuggerengine.cpp | 4 ++-- src/plugins/debugger/debuggerplugin.cpp | 8 +++++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/plugins/debugger/debuggercore.h b/src/plugins/debugger/debuggercore.h index 63da7f1294b..a8acfe0f0dd 100644 --- a/src/plugins/debugger/debuggercore.h +++ b/src/plugins/debugger/debuggercore.h @@ -92,6 +92,8 @@ public: bool setMarker = false) = 0; virtual void resetLocation() = 0; + virtual void removeLocationMark() = 0; + virtual void readSettings() = 0; virtual void writeSettings() const = 0; diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp index 926326dce2f..57902453cff 100644 --- a/src/plugins/debugger/debuggerengine.cpp +++ b/src/plugins/debugger/debuggerengine.cpp @@ -516,7 +516,7 @@ void DebuggerEngine::resetLocation() { d->m_disassemblerViewAgent.resetLocation(); d->m_stackHandler.setCurrentIndex(-1); - debuggerCore()->resetLocation(); + debuggerCore()->removeLocationMark(); } void DebuggerEngine::gotoLocation(const QString &fileName, int lineNumber, bool setMarker) @@ -531,7 +531,7 @@ void DebuggerEngine::gotoLocation(const StackFrame &frame, bool setMarker) { if (theDebuggerBoolSetting(OperateByInstruction) || !frame.isUsable()) { if (setMarker) - debuggerCore()->resetLocation(); + resetLocation(); d->m_disassemblerViewAgent.setFrame(frame); } else { debuggerCore()->gotoLocation(frame.file, frame.line, setMarker); diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 2a314b12ea3..b1523dc438b 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -1201,6 +1201,7 @@ public slots: } void resetLocation(); + void removeLocationMark(); QVariant sessionValue(const QString &name); void setSessionValue(const QString &name, const QVariant &value); QIcon locationMarkIcon() const { return m_locationMarkIcon; } @@ -2910,9 +2911,10 @@ const CPlusPlus::Snapshot &DebuggerPluginPrivate::cppCodeModelSnapshot() const void DebuggerPluginPrivate::resetLocation() { currentEngine()->resetLocation(); - // FIXME: code should be moved here from the engine implementation. - //d->m_disassemblerViewAgent.resetLocation(); - //d->m_stackHandler.setCurrentIndex(-1); +} + +void DebuggerPluginPrivate::removeLocationMark() +{ m_locationMark.reset(); } -- GitLab