Call SnapshotManager::FinishedSnapshotWrites

... when the update has finished. This allows SnapshotManager
to conclude the update and prepare for reboot.

Test: builds
Test: apply OTA on Virtual A/B device, then check
/metadata/ota/snapshot-boot exists, then reboot
Bug: 138816109
Change-Id: I2a4699865b09358ef018313bed64e34617a78e3c
diff --git a/boot_control_android.cc b/boot_control_android.cc
index 4c998b1..4a010bd 100644
--- a/boot_control_android.cc
+++ b/boot_control_android.cc
@@ -245,6 +245,10 @@
 }
 
 bool BootControlAndroid::SetActiveBootSlot(Slot slot) {
+  if (slot != GetCurrentSlot() && !dynamic_control_->FinishUpdate()) {
+    return false;
+  }
+
   CommandResult result;
   auto ret = module_->setActiveBootSlot(slot, StoreResultCallback(&result));
   if (!ret.isOk()) {