Merge "[phone] Don't start search loader before it's ready"
diff --git a/src/com/android/contacts/list/PhoneNumberPickerFragment.java b/src/com/android/contacts/list/PhoneNumberPickerFragment.java
index 938d43a..015a364 100644
--- a/src/com/android/contacts/list/PhoneNumberPickerFragment.java
+++ b/src/com/android/contacts/list/PhoneNumberPickerFragment.java
@@ -55,6 +55,9 @@
 
     private static final String KEY_FILTER = "filter";
 
+    /** true if the loader has started at least once. */
+    private boolean mLoaderStarted;
+
     // A complete copy from DefaultContactBrowserListFragment
     // TODO: should be able to share logic around filter header.
     private class FilterHeaderClickListener implements OnClickListener {
@@ -204,6 +207,12 @@
     }
 
     @Override
+    protected void startLoading() {
+        mLoaderStarted = true;
+        super.startLoading();
+    }
+
+    @Override
     protected ContactEntryListAdapter createListAdapter() {
         if (!isLegacyCompatibilityMode()) {
             PhoneNumberListAdapter adapter = new PhoneNumberListAdapter(getActivity());
@@ -272,7 +281,11 @@
             ContactListFilter.storeToPreferences(mPrefs, mFilter);
         }
 
-        reloadData();
+        // This method can be called before {@link #onStart} where we start the loader.  In that
+        // case we shouldn't start the loader yet, as we haven't done all initialization yet.
+        if (mLoaderStarted) {
+            reloadData();
+        }
         updateFilterHeaderView();
     }
 }