From 4a0ad7cfbb2851695b66f2075273a27202832d6b Mon Sep 17 00:00:00 2001 From: Michael Bestas Date: Sun, 8 May 2016 01:14:37 +0300 Subject: [PATCH] CMSettings: Fix upgrade from cm-12.1 after weather changes * Only the owner can write to the global db Change-Id: Iec7736c28ff0bc7a35dae8bbc85ca2b1c137da49 --- .../cmsettings/CMDatabaseHelper.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMDatabaseHelper.java b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMDatabaseHelper.java index faf99d3..5a1e50d 100644 --- a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMDatabaseHelper.java +++ b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMDatabaseHelper.java @@ -202,17 +202,19 @@ public class CMDatabaseHelper extends SQLiteOpenHelper{ } if (upgradeVersion < 5) { - db.beginTransaction(); - SQLiteStatement stmt = null; - try { - stmt = db.compileStatement("INSERT INTO global(name,value)" - + " VALUES(?,?);"); - loadIntegerSetting(stmt, CMSettings.Global.WEATHER_TEMPERATURE_UNIT, - R.integer.def_temperature_unit); - db.setTransactionSuccessful(); - } finally { - if (stmt != null) stmt.close(); - db.endTransaction(); + if (mUserHandle == UserHandle.USER_OWNER) { + db.beginTransaction(); + SQLiteStatement stmt = null; + try { + stmt = db.compileStatement("INSERT INTO global(name,value)" + + " VALUES(?,?);"); + loadIntegerSetting(stmt, CMSettings.Global.WEATHER_TEMPERATURE_UNIT, + R.integer.def_temperature_unit); + db.setTransactionSuccessful(); + } finally { + if (stmt != null) stmt.close(); + db.endTransaction(); + } } upgradeVersion = 5; }