diff options
author | Christopher Tate <ctate@google.com> | 2012-09-06 22:17:43 -0700 |
---|---|---|
committer | Christopher Tate <ctate@google.com> | 2012-09-06 22:52:23 -0700 |
commit | 1a9c0dfdbbeba1bc498170be283394ba3e0e9752 (patch) | |
tree | dff9e345171462a71a176b069d0ea278b0bf5014 /packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java | |
parent | 8e21d4df2154ad13916b95efc6c4b89815bb2cfb (diff) | |
download | frameworks_base-1a9c0dfdbbeba1bc498170be283394ba3e0e9752.zip frameworks_base-1a9c0dfdbbeba1bc498170be283394ba3e0e9752.tar.gz frameworks_base-1a9c0dfdbbeba1bc498170be283394ba3e0e9752.tar.bz2 |
Mark all settings upgrade transactions as successful along the way
If you don't, then the upgrade gets rolled back by the open helper,
and Bad Stuff Happens.
Change-Id: I191263e5cceb21b96ef413d28e7ee00a924acfc2
Diffstat (limited to 'packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java')
-rw-r--r-- | packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java index 0917b24..f153904 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -67,7 +67,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { // database gets upgraded properly. At a minimum, please confirm that 'upgradeVersion' // is properly propagated through your change. Not doing so will result in a loss of user // settings. - private static final int DATABASE_VERSION = 84; + private static final int DATABASE_VERSION = 85; private Context mContext; private int mUserHandle; @@ -1241,6 +1241,8 @@ public class DatabaseHelper extends SQLiteOpenHelper { loadBooleanSetting(stmt, Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE, R.bool.def_accessibility_display_magnification_auto_update); + + db.setTransactionSuccessful(); } finally { db.endTransaction(); if (stmt != null) stmt.close(); @@ -1248,6 +1250,28 @@ public class DatabaseHelper extends SQLiteOpenHelper { upgradeVersion = 84; } + if (upgradeVersion == 84) { + db.beginTransaction(); + SQLiteStatement stmt = null; + try { + // Patch up the slightly-wrong key migration from 82 -> 83 + String[] settingsToMove = { + Settings.Secure.ADB_ENABLED, + Settings.Secure.BLUETOOTH_ON, + Settings.Secure.DATA_ROAMING, + Settings.Secure.DEVICE_PROVISIONED, + Settings.Secure.INSTALL_NON_MARKET_APPS, + Settings.Secure.USB_MASS_STORAGE_ENABLED + }; + moveSettingsToNewTable(db, TABLE_SECURE, TABLE_GLOBAL, settingsToMove); + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); + if (stmt != null) stmt.close(); + } + upgradeVersion = 85; + } + // *** Remember to update DATABASE_VERSION above! if (upgradeVersion != currentVersion) { |