diff options
-rw-r--r-- | src/plugins/vcsbase/checkoutjobs.cpp | 11 | ||||
-rw-r--r-- | src/plugins/vcsbase/checkoutprogresswizardpage.cpp | 7 | ||||
-rw-r--r-- | src/plugins/vcsbase/checkoutwizarddialog.cpp | 2 |
3 files changed, 14 insertions, 6 deletions
diff --git a/src/plugins/vcsbase/checkoutjobs.cpp b/src/plugins/vcsbase/checkoutjobs.cpp index 7a419a0098..257068d5b5 100644 --- a/src/plugins/vcsbase/checkoutjobs.cpp +++ b/src/plugins/vcsbase/checkoutjobs.cpp @@ -94,9 +94,16 @@ void ProcessCheckoutJob::slotOutput() emit output(s); } -void ProcessCheckoutJob::slotError(QProcess::ProcessError /* error */) +void ProcessCheckoutJob::slotError(QProcess::ProcessError error) { - emit failed(d->process.errorString()); + switch (error) { + case QProcess::FailedToStart: + emit failed(tr("Unable to start %1: %2").arg(d->binary, d->process.errorString())); + break; + default: + emit failed(d->process.errorString()); + break; + } } void ProcessCheckoutJob::slotFinished (int exitCode, QProcess::ExitStatus exitStatus) diff --git a/src/plugins/vcsbase/checkoutprogresswizardpage.cpp b/src/plugins/vcsbase/checkoutprogresswizardpage.cpp index 6af15fb0f8..8fcaef51fc 100644 --- a/src/plugins/vcsbase/checkoutprogresswizardpage.cpp +++ b/src/plugins/vcsbase/checkoutprogresswizardpage.cpp @@ -63,10 +63,11 @@ void CheckoutProgressWizardPage::start(const QSharedPointer<AbstractCheckoutJob> connect(job.data(), SIGNAL(succeeded()), this, SLOT(slotSucceeded())); QApplication::setOverrideCursor(Qt::WaitCursor); ui->logPlainTextEdit->clear(); - setSubTitle(tr("Checkout started...")); - job->start(); + setSubTitle(tr("Checkout started...")); m_state = Running; - + // Note: Process jobs can emit failed() right from + // the start() method on Windows. + job->start(); } void CheckoutProgressWizardPage::slotFailed(const QString &why) diff --git a/src/plugins/vcsbase/checkoutwizarddialog.cpp b/src/plugins/vcsbase/checkoutwizarddialog.cpp index 9cb5a6a45e..36b9c271ee 100644 --- a/src/plugins/vcsbase/checkoutwizarddialog.cpp +++ b/src/plugins/vcsbase/checkoutwizarddialog.cpp @@ -70,9 +70,9 @@ void CheckoutWizardDialog::slotTerminated(bool success) void CheckoutWizardDialog::start(const QSharedPointer<AbstractCheckoutJob> &job) { - m_progressPage->start(job); // No "back" available while running. button(QWizard::BackButton)->setEnabled(false); + m_progressPage->start(job); } void CheckoutWizardDialog::reject() |