Reset post_data_ and services_update_finished_ on userspace reboot
Test: adb reboot userspace
Bug: 143970043
Change-Id: I77d47a8460b1526337a318547a59141334e11cdd
Merged-In: I77d47a8460b1526337a318547a59141334e11cdd
(cherry picked from commit 3ad292025c022dac2139e5a33debf850df27a9af)
diff --git a/init/reboot.cpp b/init/reboot.cpp
index 08b99ab..8d8bd8e 100644
--- a/init/reboot.cpp
+++ b/init/reboot.cpp
@@ -817,6 +817,7 @@
LOG(INFO) << "Re-enabling service '" << s->name() << "'";
s->Enable();
}
+ ServiceList::GetInstance().ResetState();
LeaveShutdown();
ActionManager::GetInstance().QueueEventTrigger("userspace-reboot-resume");
guard.Disable(); // Go on with userspace reboot.
diff --git a/init/service_list.h b/init/service_list.h
index 1838624..3b9018b 100644
--- a/init/service_list.h
+++ b/init/service_list.h
@@ -75,6 +75,11 @@
bool IsServicesUpdated() const { return services_update_finished_; }
void DelayService(const Service& service);
+ void ResetState() {
+ post_data_ = false;
+ services_update_finished_ = false;
+ }
+
private:
std::vector<std::unique_ptr<Service>> services_;