diff options
Diffstat (limited to 'ui/qt5/runner/executepage.cc')
-rw-r--r-- | ui/qt5/runner/executepage.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/ui/qt5/runner/executepage.cc b/ui/qt5/runner/executepage.cc index a5ed839..c15c4a7 100644 --- a/ui/qt5/runner/executepage.cc +++ b/ui/qt5/runner/executepage.cc @@ -60,6 +60,8 @@ ExecutePage::ExecutePage(QWidget *parent) : HorizonWizardPage(parent) { this, &ExecutePage::executorReady); connect(executor, &QProcess::readyReadStandardOutput, this, &ExecutePage::executorOutReady); + connect(executor, &QProcess::errorOccurred, + this, &ExecutePage::executorErrored); connect(executor, QOverload<int, QProcess::ExitStatus>::of(&QProcess::finished), this, &ExecutePage::executorFinished); executor->start(); @@ -128,6 +130,12 @@ void ExecutePage::executorFinished(int code, QProcess::ExitStatus status) { finishTimer->start(); } +void ExecutePage::executorErrored(QProcess::ProcessError what) { + markFailed(this->current); + wizard()->button(QWizard::CancelButton)->setEnabled(false); + finishTimer->start(); +} + int ExecutePage::nextId() const { if(failed) { return ExecutorWizard::Page_Error; |