From 43f02573dfd4d5e61f12d7e78986399d2eee7399 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Mon, 29 Jan 2018 08:14:40 +0100 Subject: [PATCH] Debugger: Use shared TerminalRunner also for CDB Task-number: QTCREATORBUG-19633 Change-Id: Ic16335de1c5e57da7d9253772bad9e4ade1db926 Reviewed-by: David Schulz --- src/plugins/debugger/debuggerruncontrol.cpp | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/plugins/debugger/debuggerruncontrol.cpp b/src/plugins/debugger/debuggerruncontrol.cpp index a576377a2cd..741a295af2d 100644 --- a/src/plugins/debugger/debuggerruncontrol.cpp +++ b/src/plugins/debugger/debuggerruncontrol.cpp @@ -365,7 +365,13 @@ void DebuggerRunTool::setBreakOnMain(bool on) void DebuggerRunTool::setUseTerminal(bool on) { - if (on && !d->terminalRunner && m_runParameters.cppEngineType == GdbEngineType) { + // CDB has a built-in console that might be preferred by some. + bool useCdbConsole = m_runParameters.cppEngineType == CdbEngineType + && (m_runParameters.startMode == StartInternal + || m_runParameters.startMode == StartExternal) + && boolSetting(UseCdbConsole); + + if (on && !d->terminalRunner && !useCdbConsole) { d->terminalRunner = new TerminalRunner(this); addStartDependency(d->terminalRunner); } @@ -891,15 +897,6 @@ DebuggerRunTool::DebuggerRunTool(RunControl *runControl, Kit *kit, bool allowTer m_engine = createPdbEngine(); } } - - if (m_runParameters.cppEngineType == CdbEngineType - && !boolSetting(UseCdbConsole) - && m_runParameters.inferior.runMode == ApplicationLauncher::Console - && (m_runParameters.startMode == StartInternal - || m_runParameters.startMode == StartExternal)) { - d->terminalRunner = new TerminalRunner(this); - addStartDependency(d->terminalRunner); - } } DebuggerEngine *DebuggerRunTool::activeEngine() const