Change abortChanges to take a message and bool
abortChanges will attempt to pass a reboot message, and will only reboot
if the device is currently checkpointing. Additionally, it can opt to
attempt to prevent future attempts. This only works for non-bootloader
controlled updates. Failures are ignored, as it will always reboot the
device. In the unlikely event of such a failure, the device will
continue to retry as though you did not ask to prevent future attempts.
Test: vdc checkpoint abortChanges abort_retry_test 1
vdc checkpoint abortChanges abort_noretry_test 0
Change-Id: I7b6214765a1faaf4fd193c73331696b53ae572d2
diff --git a/VoldNativeService.cpp b/VoldNativeService.cpp
index 6868c83..623cced 100644
--- a/VoldNativeService.cpp
+++ b/VoldNativeService.cpp
@@ -865,11 +865,12 @@
return cp_markBootAttempt();
}
-binder::Status VoldNativeService::abortChanges() {
+binder::Status VoldNativeService::abortChanges(const std::string& message, bool retry) {
ENFORCE_UID(AID_SYSTEM);
ACQUIRE_LOCK;
- return cp_abortChanges();
+ cp_abortChanges(message, retry);
+ return ok();
}
binder::Status VoldNativeService::supportsCheckpoint(bool* _aidl_return) {