forked from qt-creator/qt-creator
Slog2InfoRunner: Connect to QtcProcess::done() signal
Instead of connecting to errorOccurred() and finished() signals. Add some missing basic error handling. Change-Id: I5faee9901b5820cd972cf5f6e47880addfbf1d1e Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Rafael Roquetto <rafael.roquetto@qt.io>
This commit is contained in:
@@ -52,15 +52,15 @@ Slog2InfoRunner::Slog2InfoRunner(RunControl *runControl)
|
|||||||
m_applicationId.truncate(63);
|
m_applicationId.truncate(63);
|
||||||
|
|
||||||
m_testProcess = new QnxDeviceProcess(device(), this);
|
m_testProcess = new QnxDeviceProcess(device(), this);
|
||||||
connect(m_testProcess, &QtcProcess::finished, this, &Slog2InfoRunner::handleTestProcessCompleted);
|
connect(m_testProcess, &QtcProcess::done, this, &Slog2InfoRunner::handleTestProcessCompleted);
|
||||||
|
|
||||||
m_launchDateTimeProcess = new SshDeviceProcess(device(), this);
|
m_launchDateTimeProcess = new SshDeviceProcess(device(), this);
|
||||||
connect(m_launchDateTimeProcess, &QtcProcess::finished, this, &Slog2InfoRunner::launchSlog2Info);
|
connect(m_launchDateTimeProcess, &QtcProcess::done, this, &Slog2InfoRunner::launchSlog2Info);
|
||||||
|
|
||||||
m_logProcess = new QnxDeviceProcess(device(), this);
|
m_logProcess = new QnxDeviceProcess(device(), this);
|
||||||
connect(m_logProcess, &QtcProcess::readyReadStandardOutput, this, &Slog2InfoRunner::readLogStandardOutput);
|
connect(m_logProcess, &QtcProcess::readyReadStandardOutput, this, &Slog2InfoRunner::readLogStandardOutput);
|
||||||
connect(m_logProcess, &QtcProcess::readyReadStandardError, this, &Slog2InfoRunner::readLogStandardError);
|
connect(m_logProcess, &QtcProcess::readyReadStandardError, this, &Slog2InfoRunner::readLogStandardError);
|
||||||
connect(m_logProcess, &QtcProcess::errorOccurred, this, &Slog2InfoRunner::handleLogError);
|
connect(m_logProcess, &QtcProcess::done, this, &Slog2InfoRunner::handleLogDone);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Slog2InfoRunner::printMissingWarning()
|
void Slog2InfoRunner::printMissingWarning()
|
||||||
@@ -119,6 +119,9 @@ void Slog2InfoRunner::launchSlog2Info()
|
|||||||
if (m_logProcess->state() == QProcess::Running)
|
if (m_logProcess->state() == QProcess::Running)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (m_launchDateTimeProcess->error() != QProcess::UnknownError)
|
||||||
|
return;
|
||||||
|
|
||||||
m_launchDateTime = QDateTime::fromString(QString::fromLatin1(m_launchDateTimeProcess->readAllStandardOutput()).trimmed(),
|
m_launchDateTime = QDateTime::fromString(QString::fromLatin1(m_launchDateTimeProcess->readAllStandardOutput()).trimmed(),
|
||||||
QString::fromLatin1("dd HH:mm:ss"));
|
QString::fromLatin1("dd HH:mm:ss"));
|
||||||
|
|
||||||
@@ -190,8 +193,11 @@ void Slog2InfoRunner::readLogStandardError()
|
|||||||
appendMessage(QString::fromLatin1(m_logProcess->readAllStandardError()), Utils::StdErrFormat);
|
appendMessage(QString::fromLatin1(m_logProcess->readAllStandardError()), Utils::StdErrFormat);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Slog2InfoRunner::handleLogError()
|
void Slog2InfoRunner::handleLogDone()
|
||||||
{
|
{
|
||||||
|
if (m_logProcess->error() == QProcess::UnknownError)
|
||||||
|
return;
|
||||||
|
|
||||||
appendMessage(tr("Cannot show slog2info output. Error: %1")
|
appendMessage(tr("Cannot show slog2info output. Error: %1")
|
||||||
.arg(m_logProcess->errorString()), Utils::StdErrFormat);
|
.arg(m_logProcess->errorString()), Utils::StdErrFormat);
|
||||||
}
|
}
|
||||||
|
@@ -56,7 +56,7 @@ private:
|
|||||||
|
|
||||||
void readLogStandardOutput();
|
void readLogStandardOutput();
|
||||||
void readLogStandardError();
|
void readLogStandardError();
|
||||||
void handleLogError();
|
void handleLogDone();
|
||||||
|
|
||||||
void printMissingWarning();
|
void printMissingWarning();
|
||||||
void readLaunchTime();
|
void readLaunchTime();
|
||||||
|
Reference in New Issue
Block a user