summaryrefslogtreecommitdiffstats
path: root/src/com/android
diff options
context:
space:
mode:
authorAdam Cohen <adamcohen@google.com>2014-11-19 00:39:22 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-19 00:39:22 +0000
commita2cfddbd17e2093f9beb42073c77d802f37154e1 (patch)
treef884db00efbdb62f62202d7baab837c0bb23af8d /src/com/android
parentee7dd76bbb07dd59726b6159c413e55b6ce34db5 (diff)
parent7c39e2380f3406f897b2f0abffcb8267d2212482 (diff)
downloadandroid_packages_apps_Trebuchet-a2cfddbd17e2093f9beb42073c77d802f37154e1.tar.gz
android_packages_apps_Trebuchet-a2cfddbd17e2093f9beb42073c77d802f37154e1.tar.bz2
android_packages_apps_Trebuchet-a2cfddbd17e2093f9beb42073c77d802f37154e1.zip
am 7c39e238: Merge "Clearing DB before restore starts." into ub-now-queens
* commit '7c39e2380f3406f897b2f0abffcb8267d2212482': Clearing DB before restore starts.
Diffstat (limited to 'src/com/android')
-rw-r--r--src/com/android/launcher3/LauncherBackupAgentHelper.java22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/com/android/launcher3/LauncherBackupAgentHelper.java b/src/com/android/launcher3/LauncherBackupAgentHelper.java
index b03b13ccc..3868a57f1 100644
--- a/src/com/android/launcher3/LauncherBackupAgentHelper.java
+++ b/src/com/android/launcher3/LauncherBackupAgentHelper.java
@@ -69,13 +69,23 @@ public class LauncherBackupAgentHelper extends BackupAgentHelper {
Log.d(TAG, "Restore is only supported on devices running Lollipop and above.");
return;
}
- super.onRestore(data, appVersionCode, newState);
- // If no favorite was migrated, clear the data and start fresh.
- final Cursor c = getContentResolver().query(
- LauncherSettings.Favorites.CONTENT_URI_NO_NOTIFICATION, null, null, null, null);
- boolean hasData = c.moveToNext();
- c.close();
+ // Clear dB before restore
+ LauncherAppState.getLauncherProvider().createEmptyDB();
+
+ boolean hasData;
+ try {
+ super.onRestore(data, appVersionCode, newState);
+ // If no favorite was migrated, clear the data and start fresh.
+ final Cursor c = getContentResolver().query(
+ LauncherSettings.Favorites.CONTENT_URI_NO_NOTIFICATION, null, null, null, null);
+ hasData = c.moveToNext();
+ c.close();
+ } catch (Exception e) {
+ // If the restore fails, we should do a fresh start.
+ Log.e(TAG, "Restore failed", e);
+ hasData = false;
+ }
if (hasData && mHelper.restoreSuccessful) {
LauncherAppState.getLauncherProvider().clearFlagEmptyDbCreated();