Commit e79808a8 authored by hjk's avatar hjk

Debugger: Don't show a location marker in the mixed master engine

Task-number: QTCREATORBUG-14087
Change-Id: I7e8f116c97cdea0bd8234d060d068435229e6fc2
Reviewed-by: default avatarChristian Stenger <christian.stenger@theqtcompany.com>
parent 54da18ea
......@@ -79,6 +79,9 @@ public:
virtual bool setToolTipExpression(TextEditor::TextEditorWidget *editorWidget,
const DebuggerToolTipContext &context);
virtual DebuggerEngine *cppEngine() { return this; }
virtual void setupEngine();
virtual void setupInferior();
virtual void runEngine();
......
......@@ -256,6 +256,7 @@ public:
bool isSlaveEngine() const;
bool isMasterEngine() const;
DebuggerEngine *masterEngine() const;
virtual DebuggerEngine *cppEngine() { return 0; }
virtual bool canDisplayTooltip() const { return state() == InferiorStopOk; }
......
......@@ -943,10 +943,12 @@ public slots:
void handleOperateByInstructionTriggered(bool operateByInstructionTriggered)
{
// Go to source only if we have the file.
if (currentEngine()->stackHandler()->currentIndex() >= 0) {
const StackFrame frame = currentEngine()->stackHandler()->currentFrame();
if (operateByInstructionTriggered || frame.isUsable())
currentEngine()->gotoLocation(Location(frame, true));
if (DebuggerEngine *cppEngine = currentEngine()->cppEngine()) {
if (cppEngine->stackHandler()->currentIndex() >= 0) {
const StackFrame frame = cppEngine->stackHandler()->currentFrame();
if (operateByInstructionTriggered || frame.isUsable())
cppEngine->gotoLocation(Location(frame, true));
}
}
}
......
......@@ -72,6 +72,7 @@ public:
~GdbEngine();
private: ////////// General Interface //////////
virtual DebuggerEngine *cppEngine() { return this; }
virtual void setupEngine() = 0;
virtual void handleGdbStartFailed();
......
......@@ -68,6 +68,8 @@ public:
private:
// DebuggerEngine implementation
DebuggerEngine *cppEngine() { return this; }
void executeStep();
void executeStepOut();
void executeNext();
......
......@@ -773,11 +773,6 @@ void QmlCppEngine::debugLastCommand()
m_cppEngine->debugLastCommand();
}
DebuggerEngine *QmlCppEngine::cppEngine() const
{
return m_cppEngine;
}
DebuggerEngine *QmlCppEngine::qmlEngine() const
{
return m_qmlEngine;
......
......@@ -84,7 +84,7 @@ public:
void assignValueInDebugger(const WatchData *data,
const QString &expr, const QVariant &value);
DebuggerEngine *cppEngine() const;
DebuggerEngine *cppEngine() { return m_cppEngine; }
DebuggerEngine *qmlEngine() const;
void notifyEngineRemoteSetupFinished(const RemoteSetupResult &result);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment