diff --git a/src/plugins/debugger/terminal.cpp b/src/plugins/debugger/terminal.cpp index ac8a043df86..86531d0e0ad 100644 --- a/src/plugins/debugger/terminal.cpp +++ b/src/plugins/debugger/terminal.cpp @@ -8,6 +8,7 @@ #include #include +#include #include #include @@ -172,9 +173,18 @@ void TerminalRunner::start() QTC_ASSERT(!m_stubProc, reportFailure({}); return); Runnable stub = m_stubRunnable(); + bool runAsRoot = false; + if (auto runAsRootAspect = runControl()->aspect()) + runAsRoot = runAsRootAspect->value; + m_stubProc = new Process(this); m_stubProc->setTerminalMode(TerminalMode::Debug); + if (runAsRoot) { + m_stubProc->setRunAsRoot(runAsRoot); + RunControl::provideAskPassEntry(stub.environment); + } + connect(m_stubProc, &Process::started, this, &TerminalRunner::stubStarted); connect(m_stubProc, &Process::done,