diff --git a/worker.h b/worker.h index 5eddade..fbe3e61 100644 --- a/worker.h +++ b/worker.h @@ -204,6 +204,31 @@ class Worker : public QThread{ } virtual ~UpdateProcessRunning() { + + if (m_worker->m_lastFailedUpdateStep == UPDATE_STEP::NONE) { + if (m_worker->m_updateNotNecessary) { + // m_ismasTriggerStatusMessage = QStringList(QString("NO UPDATE NECESSARY (%1)").arg(current.toString(Qt::ISODate))); + QStringList lst = m_worker->m_ismasTriggerStatusMessage; + m_worker->GUI(lst) << (m_worker->CONSOLE(lst) << (m_worker->ISMAS(lst) << UPDATE_STEP::UPDATE_NOT_NECESSARY)); + } else { + m_worker->ISMAS() << (m_worker->GUI() << (m_worker->CONSOLE() << UPDATE_STEP::UPDATE_SUCCEEDED)); + m_worker->setProgress(_UPDATE_SUCCEEDED); + + m_worker->ISMAS() << (m_worker->GUI() << (m_worker->CONSOLE() << UPDATE_STEP::UPDATE_ACTIVATED)); + m_worker->setProgress(_UPDATE_ACTIVATED); + + m_worker->ISMAS() << (m_worker->GUI() << (m_worker->CONSOLE() << UPDATE_STEP::FINISHED)); + m_worker->setProgress(_FINISHED); + } + } else { + QStringList lst = m_worker->m_ismasTriggerStatusMessage; + UPDATE_STEP last = m_worker->m_lastFailedUpdateStep; + if (m_worker->smap.contains(last)) { + lst << QString(" (last failed: %1)").arg(m_worker->smap[last]); + } + m_worker->GUI(lst) << (m_worker->CONSOLE(lst) << (m_worker->ISMAS(lst) << UPDATE_STEP::UPDATE_FAILED)); + } + m_worker->ISMAS() << (m_worker->GUI() << (m_worker->CONSOLE() << UPDATE_STEP::SEND_LAST_VERSION)); m_worker->stopProgressLoop();