diff options
author | Adnan Begovic <adnan@cyngn.com> | 2016-01-26 11:08:31 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2016-01-26 16:52:54 -0800 |
commit | ad6f85c69ee2fde7b12f78c88c2e966e2dae7a46 (patch) | |
tree | 0b76fdfaa121092cf27b43d87f46220bcb886504 /packages | |
parent | 3629a574b2a349a76036be9e887927549f510866 (diff) | |
download | vendor_cmsdk-ad6f85c69ee2fde7b12f78c88c2e966e2dae7a46.tar.gz vendor_cmsdk-ad6f85c69ee2fde7b12f78c88c2e966e2dae7a46.tar.bz2 vendor_cmsdk-ad6f85c69ee2fde7b12f78c88c2e966e2dae7a46.zip |
CMSettingsProvider: Don't trample default values on migrate.
Since the migration is invoked even on a clean flash, with
no means of knowing what scenario we're coming from. Assume
that all null values are to be dropped and default values are
to be given precedence.
Change-Id: I10eb2f4650c379422268423dbc011b49f77ed910
TICKET: CYNGNOS-1721
Diffstat (limited to 'packages')
-rw-r--r-- | packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java index 6104ba4..196c942 100644 --- a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java +++ b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java @@ -213,6 +213,14 @@ public class CMSettingsProvider extends ContentProvider { if (LOCAL_LOGV) Log.d(TAG, "Table: " + tableName + ", Key: " + settingsKey + ", Value: " + settingsValue); + // Don't trample defaults with null values. This is the only scenario where defaults + // take precedence over migration values. + if (settingsValue == null) { + if (LOCAL_LOGV) Log.d(TAG, "Skipping migrating " + settingsKey + + " because of null value"); + continue; + } + ContentValues contentValue = new ContentValues(); contentValue.put(Settings.NameValueTable.NAME, settingsKey); contentValue.put(Settings.NameValueTable.VALUE, settingsValue); |