From 8cb5c3cfdd07f98449d3df0a676c5026c33f6b7a Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 22 Nov 2021 10:22:48 +0100 Subject: Ssh: Use base QtcProcess' useTerminal for SshRemoteProcess Still trying to ramp down non-QtcProcess interfaces. Change-Id: I6b4ae6788f5021959ff3eb35bbade2157a6d67fa Reviewed-by: Qt CI Bot Reviewed-by: Cristian Adam Reviewed-by: Jarek Kobus --- src/libs/ssh/sshremoteprocess.cpp | 8 +------- src/libs/ssh/sshremoteprocess.h | 1 - src/libs/ssh/sshremoteprocessrunner.cpp | 3 +-- src/libs/utils/qtcprocess.cpp | 5 +++++ src/libs/utils/qtcprocess.h | 4 +++- src/plugins/projectexplorer/devicesupport/sshdeviceprocess.cpp | 2 +- 6 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/libs/ssh/sshremoteprocess.cpp b/src/libs/ssh/sshremoteprocess.cpp index 53f1e40431..d310b39851 100644 --- a/src/libs/ssh/sshremoteprocess.cpp +++ b/src/libs/ssh/sshremoteprocess.cpp @@ -57,7 +57,6 @@ struct SshRemoteProcess::SshRemoteProcessPrivate QString remoteCommand; QStringList connectionArgs; QString displayName; - bool useTerminal = false; }; SshRemoteProcess::SshRemoteProcess(const QString &command, const QStringList &connectionArgs, @@ -101,11 +100,6 @@ SshRemoteProcess::~SshRemoteProcess() delete d; } -void SshRemoteProcess::requestTerminal() -{ - d->useTerminal = true; -} - void SshRemoteProcess::requestX11Forwarding(const QString &displayName) { d->displayName = displayName; @@ -122,7 +116,7 @@ Utils::CommandLine SshRemoteProcess::fullLocalCommandLine() const if (!d->displayName.isEmpty()) cmd.addArg("-X"); - if (d->useTerminal) + if (useTerminal()) cmd.addArg("-tt"); cmd.addArg("-q"); diff --git a/src/libs/ssh/sshremoteprocess.h b/src/libs/ssh/sshremoteprocess.h index 37de744135..be4ba549b1 100644 --- a/src/libs/ssh/sshremoteprocess.h +++ b/src/libs/ssh/sshremoteprocess.h @@ -43,7 +43,6 @@ class QSSH_EXPORT SshRemoteProcess : public SshProcess public: ~SshRemoteProcess(); - void requestTerminal(); void requestX11Forwarding(const QString &displayName); void start(); diff --git a/src/libs/ssh/sshremoteprocessrunner.cpp b/src/libs/ssh/sshremoteprocessrunner.cpp index bd2940a7ce..54f40109d9 100644 --- a/src/libs/ssh/sshremoteprocessrunner.cpp +++ b/src/libs/ssh/sshremoteprocessrunner.cpp @@ -128,8 +128,7 @@ void SshRemoteProcessRunner::handleConnected() this, &SshRemoteProcessRunner::handleStdout); connect(d->m_process.get(), &SshRemoteProcess::readyReadStandardError, this, &SshRemoteProcessRunner::handleStderr); - if (d->m_runInTerminal) - d->m_process->requestTerminal(); + d->m_process->setUseTerminal(d->m_runInTerminal); d->m_process->start(); } diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp index 8d4ac7f5fe..9290cc1511 100644 --- a/src/libs/utils/qtcprocess.cpp +++ b/src/libs/utils/qtcprocess.cpp @@ -824,6 +824,11 @@ void QtcProcess::setUseTerminal(bool on) d->m_process->setUseTerminal(on); } +bool QtcProcess::useTerminal() const +{ + return d->m_process->useTerminal(); +} + void QtcProcess::setRunAsRoot(bool on) { d->m_process->setRunAsRoot(on); diff --git a/src/libs/utils/qtcprocess.h b/src/libs/utils/qtcprocess.h index 0a02b1cdcf..bfe597a4fd 100644 --- a/src/libs/utils/qtcprocess.h +++ b/src/libs/utils/qtcprocess.h @@ -104,9 +104,11 @@ public: void setUseCtrlCStub(bool enabled); void setLowPriority(); void setDisableUnixTerminal(); - void setUseTerminal(bool on); void setRunAsRoot(bool on); + void setUseTerminal(bool on); + bool useTerminal() const; + void start(); void terminate(); void interrupt(); diff --git a/src/plugins/projectexplorer/devicesupport/sshdeviceprocess.cpp b/src/plugins/projectexplorer/devicesupport/sshdeviceprocess.cpp index 56c7a887a7..34861e1033 100644 --- a/src/plugins/projectexplorer/devicesupport/sshdeviceprocess.cpp +++ b/src/plugins/projectexplorer/devicesupport/sshdeviceprocess.cpp @@ -194,7 +194,7 @@ void SshDeviceProcess::handleConnected() if (!display.isEmpty()) d->process->requestX11Forwarding(display); if (runInTerminal()) { - d->process->requestTerminal(); + d->process->setUseTerminal(true); connect(&d->consoleProcess, &ConsoleProcess::errorOccurred, this, &DeviceProcess::error); connect(&d->consoleProcess, &ConsoleProcess::processStarted, -- cgit v1.2.3