diff options
| -rw-r--r-- | services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java b/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java index e592a2207095..d070b416c53c 100644 --- a/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java +++ b/services/core/java/com/android/server/locksettings/SyntheticPasswordManager.java @@ -780,6 +780,10 @@ class SyntheticPasswordManager { int slot = loadWeaverSlot(protectorId, userId); destroyState(WEAVER_SLOT_NAME, protectorId, userId); if (slot != INVALID_WEAVER_SLOT) { + if (!isWeaverAvailable()) { + Slog.e(TAG, "Cannot erase Weaver slot because Weaver is unavailable"); + return; + } Set<Integer> usedSlots = getUsedWeaverSlots(); if (!usedSlots.contains(slot)) { Slog.i(TAG, "Destroy weaver slot " + slot + " for user " + userId); |