SshDeviceProcess: Emit done() signal

Emit done() signal along with errorOccurred(FailedToStart)
and finished() signals.

Change-Id: I52db46e1c7fd44434514bac62b3df8eb0b9a4dc2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2022-04-06 12:07:48 +02:00
parent 0ee47fc734
commit 7f6b5a3bd4

View File

@@ -201,6 +201,7 @@ void SshDeviceProcess::handleConnected()
this, &SshDeviceProcess::handleProcessStarted); this, &SshDeviceProcess::handleProcessStarted);
connect(d->remoteProcess.get(), &QtcProcess::done, this, [this] { connect(d->remoteProcess.get(), &QtcProcess::done, this, [this] {
handleProcessFinished(d->remoteProcess->errorString()); handleProcessFinished(d->remoteProcess->errorString());
emit done();
}); });
connect(d->remoteProcess.get(), &QtcProcess::readyReadStandardOutput, connect(d->remoteProcess.get(), &QtcProcess::readyReadStandardOutput,
this, &QtcProcess::readyReadStandardOutput); this, &QtcProcess::readyReadStandardOutput);
@@ -227,10 +228,12 @@ void SshDeviceProcess::handleDisconnected()
case SshDeviceProcessPrivate::Connecting: case SshDeviceProcessPrivate::Connecting:
case SshDeviceProcessPrivate::Connected: case SshDeviceProcessPrivate::Connected:
emit errorOccurred(QProcess::FailedToStart); emit errorOccurred(QProcess::FailedToStart);
emit done();
break; break;
case SshDeviceProcessPrivate::ProcessRunning: case SshDeviceProcessPrivate::ProcessRunning:
d->exitStatus = QProcess::CrashExit; d->exitStatus = QProcess::CrashExit;
emit finished(); emit finished();
emit done();
default: default:
break; break;
} }
@@ -263,6 +266,7 @@ void SshDeviceProcess::handleKillOperationFinished(const QString &errorMessage)
d->errorMessage = tr("Failed to kill remote process: %1").arg(errorMessage); d->errorMessage = tr("Failed to kill remote process: %1").arg(errorMessage);
d->setState(SshDeviceProcessPrivate::Inactive); d->setState(SshDeviceProcessPrivate::Inactive);
emit finished(); emit finished();
emit done();
} }
void SshDeviceProcess::handleKillOperationTimeout() void SshDeviceProcess::handleKillOperationTimeout()
@@ -271,6 +275,7 @@ void SshDeviceProcess::handleKillOperationTimeout()
d->errorMessage = tr("Timeout waiting for remote process to finish."); d->errorMessage = tr("Timeout waiting for remote process to finish.");
d->setState(SshDeviceProcessPrivate::Inactive); d->setState(SshDeviceProcessPrivate::Inactive);
emit finished(); emit finished();
emit done();
} }
QString SshDeviceProcess::fullCommandLine() const QString SshDeviceProcess::fullCommandLine() const
@@ -290,6 +295,7 @@ void SshDeviceProcess::SshDeviceProcessPrivate::doSignal(Signal signal)
errorMessage = tr("Terminated by request."); errorMessage = tr("Terminated by request.");
setState(SshDeviceProcessPrivate::Inactive); setState(SshDeviceProcessPrivate::Inactive);
emit q->errorOccurred(QProcess::FailedToStart); emit q->errorOccurred(QProcess::FailedToStart);
emit q->done();
break; break;
case SshDeviceProcessPrivate::Connected: case SshDeviceProcessPrivate::Connected:
case SshDeviceProcessPrivate::ProcessRunning: case SshDeviceProcessPrivate::ProcessRunning: