diff --git a/sdk/src/java/lineageos/preference/ConstraintsHelper.java b/sdk/src/java/lineageos/preference/ConstraintsHelper.java index b48b00ee..48152255 100644 --- a/sdk/src/java/lineageos/preference/ConstraintsHelper.java +++ b/sdk/src/java/lineageos/preference/ConstraintsHelper.java @@ -331,7 +331,7 @@ public class ConstraintsHelper { */ private static class Graveyard { - private final Set mDeathRow = new ArraySet<>(); + private Set mDeathRow = new ArraySet<>(); private static Graveyard sInstance; @@ -374,13 +374,16 @@ public class ConstraintsHelper { public void summonReaper(PreferenceManager mgr) { synchronized (mDeathRow) { + Set notReadyForReap = new ArraySet<>(); for (String dead : mDeathRow) { Preference deadPref = mgr.findPreference(dead); if (deadPref != null) { deadPref.setVisible(false); + } else { + notReadyForReap.add(dead); } } - mDeathRow.clear(); + mDeathRow = notReadyForReap; } } }