Debugger: Move external terminal into separate RunWorker

Change-Id: Ifb9701f840195ba90db48a0f6fa07b28e0409648
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2017-09-27 08:22:02 +02:00
parent 6f481bd9da
commit 895acd23e3
13 changed files with 223 additions and 230 deletions

View File

@@ -55,6 +55,7 @@ class DebuggerResponse;
class DisassemblerAgentCookie;
class GdbMi;
class MemoryAgentCookie;
class TerminalRunner;
struct CoreInfo
{
@@ -71,7 +72,7 @@ class GdbEngine : public DebuggerEngine
Q_OBJECT
public:
explicit GdbEngine(bool useTerminal, DebuggerStartMode startMode);
explicit GdbEngine(DebuggerStartMode startMode);
~GdbEngine() final;
private: ////////// General Interface //////////
@@ -382,8 +383,7 @@ private: ////////// General Interface //////////
QString m_currentThread;
QString m_lastWinException;
QString m_lastMissingDebugInfo;
const bool m_useTerminal;
bool m_terminalTrap;
bool m_expectTerminalTrap = false;
bool usesExecInterrupt() const;
bool usesTargetAsync() const;
@@ -441,10 +441,7 @@ private: ////////// General Interface //////////
void interruptLocalInferior(qint64 pid);
// Terminal
void handleStubAttached(const DebuggerResponse &response);
void stubExited();
void stubError(const QString &msg);
Utils::ConsoleProcess m_stubProc;
void handleStubAttached(const DebuggerResponse &response, qint64 mainThreadId);
// Core
void handleTargetCore(const DebuggerResponse &response);
@@ -454,6 +451,7 @@ private: ////////// General Interface //////////
QString coreName() const;
void continueSetupEngine();
QString mainFunction() const;
QString m_executable;
QString m_coreName;