Merge "[SettingsProvider] only increment generation of unset settings if new setting is non-predefined" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
832e36d444
@@ -3056,11 +3056,11 @@ public class SettingsProvider extends ContentProvider {
|
||||
final int key = makeKey(type, userId);
|
||||
|
||||
boolean success = false;
|
||||
boolean isNewSetting = false;
|
||||
boolean wasUnsetNonPredefinedSetting = false;
|
||||
SettingsState settingsState = peekSettingsStateLocked(key);
|
||||
if (settingsState != null) {
|
||||
if (!settingsState.hasSetting(name)) {
|
||||
isNewSetting = true;
|
||||
if (!isSettingPreDefined(name, type) && !settingsState.hasSetting(name)) {
|
||||
wasUnsetNonPredefinedSetting = true;
|
||||
}
|
||||
success = settingsState.insertSettingLocked(name, value,
|
||||
tag, makeDefault, forceNonSystemPackage, packageName,
|
||||
@@ -3073,9 +3073,9 @@ public class SettingsProvider extends ContentProvider {
|
||||
|
||||
if (forceNotify || success) {
|
||||
notifyForSettingsChange(key, name);
|
||||
if (isNewSetting && !isSettingPreDefined(name, type)) {
|
||||
// Increment the generation number for all null settings because a new
|
||||
// non-predefined setting has been inserted
|
||||
if (wasUnsetNonPredefinedSetting) {
|
||||
// Increment the generation number for all non-predefined, unset settings,
|
||||
// because a new non-predefined setting has been inserted
|
||||
mGenerationRegistry.incrementGenerationForUnsetSettings(key);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user