summaryrefslogtreecommitdiffstats
path: root/install/wipe_data.cpp
diff options
context:
space:
mode:
authorDavid Anderson <dvander@google.com>2019-10-15 22:22:20 +0200
committerDavid Anderson <dvander@google.com>2019-11-11 02:02:12 +0100
commit89d2d050a0c5784b7993eaaa08be21ef93084156 (patch)
treec061a83a7a87ea5972015045433bb569b6e95e29 /install/wipe_data.cpp
parentMerge "bootloader_message: Add helpers for handling IBootControl MergeStatus." (diff)
downloadandroid_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar.gz
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar.bz2
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar.lz
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar.xz
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.tar.zst
android_bootable_recovery-89d2d050a0c5784b7993eaaa08be21ef93084156.zip
Diffstat (limited to '')
-rw-r--r--install/wipe_data.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/install/wipe_data.cpp b/install/wipe_data.cpp
index 82660bef0..287208583 100644
--- a/install/wipe_data.cpp
+++ b/install/wipe_data.cpp
@@ -27,6 +27,7 @@
#include <android-base/logging.h>
#include <android-base/stringprintf.h>
+#include "install/snapshot_utils.h"
#include "otautil/dirutil.h"
#include "recovery_ui/ui.h"
#include "recovery_utils/logging.h"
@@ -104,6 +105,12 @@ bool WipeCache(RecoveryUI* ui, const std::function<bool()>& confirm_func) {
bool WipeData(Device* device, bool convert_fbe) {
RecoveryUI* ui = device->GetUI();
ui->Print("\n-- Wiping data...\n");
+
+ if (!FinishPendingSnapshotMerges(device)) {
+ ui->Print("Unable to check update status or complete merge, cannot wipe partitions.\n");
+ return false;
+ }
+
bool success = device->PreWipeData();
if (success) {
success &= EraseVolume(DATA_ROOT, ui, convert_fbe);