From d7d4ec224f9d6921c9f7f51bce65e4c8d30157f0 Mon Sep 17 00:00:00 2001 From: Dmitrii Merkurev Date: Mon, 19 Jun 2023 21:06:25 +0100 Subject: [PATCH] Allow factory reset without PERSISTENT_DATA_BLOCK_SERVICE Currently factory reset action is ignored if PERSISTENT_DATA_BLOCK_SERVICE isn't presented on device. Make sure that we can execute regular factory reset without it by utilizing the logic from shouldWipePersistentDataBlock. Test: manual verify on aosp build Bug: 129137473 Bug: 196634851 Change-Id: I2abcb93cbc0872dd920c1dd62152596ddd723691 Signed-off-by: Dmitrii Merkurev --- src/com/android/settings/MainClearConfirm.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/com/android/settings/MainClearConfirm.java b/src/com/android/settings/MainClearConfirm.java index 9208c4fbf6a..e42c3a11430 100644 --- a/src/com/android/settings/MainClearConfirm.java +++ b/src/com/android/settings/MainClearConfirm.java @@ -86,13 +86,14 @@ public class MainClearConfirm extends InstrumentedFragment { return; } + final PersistentDataBlockManager pdbManager; // pre-flight check hardware support PersistentDataBlockManager - if (SystemProperties.get(PERSISTENT_DATA_BLOCK_PROP).equals("")) { - return; - } - - final PersistentDataBlockManager pdbManager = (PersistentDataBlockManager) + if (!SystemProperties.get(PERSISTENT_DATA_BLOCK_PROP).equals("")) { + pdbManager = (PersistentDataBlockManager) getActivity().getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE); + } else { + pdbManager = null; + } if (shouldWipePersistentDataBlock(pdbManager)) {