Merge "Fix crash from battery saver switch" into nyc-dev
diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java
index 18b941c..e08173f 100644
--- a/src/com/android/settings/dashboard/DashboardSummary.java
+++ b/src/com/android/settings/dashboard/DashboardSummary.java
@@ -87,7 +87,7 @@
         mSummaryLoader = new SummaryLoader(getActivity(), categories);
         setHasOptionsMenu(true);
         Context context = getContext();
-        mConditionManager = ConditionManager.get(context);
+        mConditionManager = ConditionManager.get(context, false);
         mSuggestionParser = new SuggestionParser(context,
                 context.getSharedPreferences(SUGGESTIONS, 0), R.xml.suggestion_ordering);
         mSuggestionsChecks = new SuggestionsChecks(getContext());
diff --git a/src/com/android/settings/dashboard/conditional/ConditionManager.java b/src/com/android/settings/dashboard/conditional/ConditionManager.java
index f38bb2a..ad0e839 100644
--- a/src/com/android/settings/dashboard/conditional/ConditionManager.java
+++ b/src/com/android/settings/dashboard/conditional/ConditionManager.java
@@ -54,10 +54,15 @@
 
     private final ArrayList<ConditionListener> mListeners = new ArrayList<>();
 
-    private ConditionManager(Context context) {
+    private ConditionManager(Context context, boolean loadConditionsNow) {
         mContext = context;
         mConditions = new ArrayList<>();
-        new ConditionLoader().execute();
+        if (loadConditionsNow) {
+            ConditionLoader loader = new ConditionLoader();
+            loader.onPostExecute(loader.doInBackground());
+        } else {
+            new ConditionLoader().execute();
+        }
     }
 
     public void refreshAll() {
@@ -241,8 +246,12 @@
     }
 
     public static ConditionManager get(Context context) {
+        return get(context, true);
+    }
+
+    public static ConditionManager get(Context context, boolean loadConditionsNow) {
         if (sInstance == null) {
-            sInstance = new ConditionManager(context.getApplicationContext());
+            sInstance = new ConditionManager(context.getApplicationContext(), loadConditionsNow);
         }
         return sInstance;
     }