summaryrefslogtreecommitdiff
path: root/src/components/policy/policy_regular/src/update_status_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/policy/policy_regular/src/update_status_manager.cc')
-rw-r--r--src/components/policy/policy_regular/src/update_status_manager.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/components/policy/policy_regular/src/update_status_manager.cc b/src/components/policy/policy_regular/src/update_status_manager.cc
index c37f8bbadc..7e5b866dfa 100644
--- a/src/components/policy/policy_regular/src/update_status_manager.cc
+++ b/src/components/policy/policy_regular/src/update_status_manager.cc
@@ -43,7 +43,8 @@ UpdateStatusManager::UpdateStatusManager()
, current_status_(std::make_shared<UpToDateStatus>())
, last_processed_event_(kNoEvent)
, apps_search_in_progress_(false)
- , app_registered_from_non_consented_device_(true) {}
+ , app_registered_from_non_consented_device_(true)
+ , last_update_was_failed_(false) {}
UpdateStatusManager::~UpdateStatusManager() {}
@@ -97,6 +98,7 @@ void UpdateStatusManager::OnResetDefaultPT(bool is_update_required) {
void UpdateStatusManager::OnResetRetrySequence() {
LOG4CXX_AUTO_TRACE(logger_);
+ last_update_was_failed_ = true;
ProcessEvent(kOnResetRetrySequence);
}
@@ -116,6 +118,10 @@ void UpdateStatusManager::OnNewApplicationAdded(const DeviceConsent consent) {
return;
}
app_registered_from_non_consented_device_ = false;
+ if (last_update_was_failed_) {
+ last_update_was_failed_ = false;
+ ProcessEvent(kPostponedUpdate);
+ }
ProcessEvent(kOnNewAppRegistered);
}