forked from qt-creator/qt-creator
ProjectExplorer/Debugger: Add a 'Run as root' option for Unix hosts
For local run and GDB debug, with or without terminal. Task-number: QTCREATORBUG-2831 Task-number: QTCREATORBUG-25330 Change-Id: I9b5d2156bcffea4f358474ecdbcad580a4419917 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -395,6 +395,7 @@ void DebuggerRunTool::setUseTerminal(bool on)
|
||||
|
||||
if (on && !d->terminalRunner && !useCdbConsole) {
|
||||
d->terminalRunner = new TerminalRunner(runControl(), m_runParameters.inferior);
|
||||
d->terminalRunner->setRunAsRoot(m_runParameters.runAsRoot);
|
||||
addStartDependency(d->terminalRunner);
|
||||
}
|
||||
if (!on && d->terminalRunner) {
|
||||
@@ -402,6 +403,13 @@ void DebuggerRunTool::setUseTerminal(bool on)
|
||||
}
|
||||
}
|
||||
|
||||
void DebuggerRunTool::setRunAsRoot(bool on)
|
||||
{
|
||||
m_runParameters.runAsRoot = on;
|
||||
if (d->terminalRunner)
|
||||
d->terminalRunner->setRunAsRoot(on);
|
||||
}
|
||||
|
||||
void DebuggerRunTool::setCommandsAfterConnect(const QString &commands)
|
||||
{
|
||||
m_runParameters.commandsAfterConnect = commands;
|
||||
@@ -948,6 +956,8 @@ DebuggerRunTool::DebuggerRunTool(RunControl *runControl, AllowTerminal allowTerm
|
||||
m_runParameters.symbolFile = symbolsAspect->filePath();
|
||||
if (auto terminalAspect = runControl->aspect<TerminalAspect>())
|
||||
m_runParameters.useTerminal = terminalAspect->useTerminal();
|
||||
if (auto runAsRootAspect = runControl->aspect<RunAsRootAspect>())
|
||||
m_runParameters.runAsRoot = runAsRootAspect->value();
|
||||
|
||||
Kit *kit = runControl->kit();
|
||||
QTC_ASSERT(kit, return);
|
||||
|
Reference in New Issue
Block a user