Archive: Connect to QtcProcess::done() signal

Instead of connecting to errorOccurred() and finished() signals.

Change-Id: I2bc4b8359652549949c486ad6bce002a5db30688
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Jarek Kobus
2022-04-05 16:27:46 +02:00
parent 1a20495400
commit 6d50a5e36e

View File

@@ -186,12 +186,11 @@ void Archive::unarchive()
QObject::connect(m_process.get(), &QtcProcess::readyReadStandardOutput, this, [this] { QObject::connect(m_process.get(), &QtcProcess::readyReadStandardOutput, this, [this] {
emit outputReceived(QString::fromUtf8(m_process->readAllStandardOutput())); emit outputReceived(QString::fromUtf8(m_process->readAllStandardOutput()));
}); });
QObject::connect(m_process.get(), &QtcProcess::finished, this, [this] { QObject::connect(m_process.get(), &QtcProcess::done, this, [this] {
emit finished(m_process->result() == ProcessResult::FinishedWithSuccess); const bool successfulFinish = m_process->result() == ProcessResult::FinishedWithSuccess;
}); if (!successfulFinish)
QObject::connect(m_process.get(), &QtcProcess::errorOccurred, this, [this] { emit outputReceived(tr("Command failed."));
emit outputReceived(tr("Command failed.")); emit finished(successfulFinish);
emit finished(false);
}); });
emit outputReceived(tr("Running %1\nin \"%2\".\n\n", "Running <cmd> in <workingdirectory>") emit outputReceived(tr("Running %1\nin \"%2\".\n\n", "Running <cmd> in <workingdirectory>")