Merge "Fix ClassCastException from Parcelable[] to Member[]"
diff --git a/src/com/android/contacts/group/GroupEditorFragment.java b/src/com/android/contacts/group/GroupEditorFragment.java
index 734dbae..4712871 100644
--- a/src/com/android/contacts/group/GroupEditorFragment.java
+++ b/src/com/android/contacts/group/GroupEditorFragment.java
@@ -191,9 +191,9 @@
     private ContentResolver mContentResolver;
     private SuggestedMemberListAdapter mAutoCompleteAdapter;
 
-    private final List<Member> mListMembersToAdd = new ArrayList<Member>();
-    private final List<Member> mListMembersToRemove = new ArrayList<Member>();
-    private final List<Member> mListToDisplay = new ArrayList<Member>();
+    private ArrayList<Member> mListMembersToAdd = new ArrayList<Member>();
+    private ArrayList<Member> mListMembersToRemove = new ArrayList<Member>();
+    private ArrayList<Member> mListToDisplay = new ArrayList<Member>();
 
     public GroupEditorFragment() {
     }
@@ -273,9 +273,9 @@
         outState.putBoolean(KEY_GROUP_NAME_IS_READ_ONLY, mGroupNameIsReadOnly);
         outState.putString(KEY_ORIGINAL_GROUP_NAME, mOriginalGroupName);
 
-        outState.putParcelableArray(KEY_MEMBERS_TO_ADD, Member.toArray(mListMembersToAdd));
-        outState.putParcelableArray(KEY_MEMBERS_TO_REMOVE, Member.toArray(mListMembersToRemove));
-        outState.putParcelableArray(KEY_MEMBERS_TO_DISPLAY, Member.toArray(mListToDisplay));
+        outState.putParcelableArrayList(KEY_MEMBERS_TO_ADD, mListMembersToAdd);
+        outState.putParcelableArrayList(KEY_MEMBERS_TO_REMOVE, mListMembersToRemove);
+        outState.putParcelableArrayList(KEY_MEMBERS_TO_DISPLAY, mListToDisplay);
     }
 
     private void onRestoreInstanceState(Bundle state) {
@@ -291,10 +291,9 @@
         mGroupNameIsReadOnly = state.getBoolean(KEY_GROUP_NAME_IS_READ_ONLY);
         mOriginalGroupName = state.getString(KEY_ORIGINAL_GROUP_NAME);
 
-        Member.toList((Member[]) state.getParcelableArray(KEY_MEMBERS_TO_ADD), mListMembersToAdd);
-        Member.toList((Member[]) state.getParcelableArray(KEY_MEMBERS_TO_REMOVE),
-                mListMembersToRemove);
-        Member.toList((Member[]) state.getParcelableArray(KEY_MEMBERS_TO_DISPLAY), mListToDisplay);
+        mListMembersToAdd = state.getParcelableArrayList(KEY_MEMBERS_TO_ADD);
+        mListMembersToRemove = state.getParcelableArrayList(KEY_MEMBERS_TO_REMOVE);
+        mListToDisplay = state.getParcelableArrayList(KEY_MEMBERS_TO_DISPLAY);
     }
 
     public void setContentResolver(ContentResolver resolver) {
@@ -895,22 +894,6 @@
                 return new Member[size];
             }
         };
-
-        /** Convert to an array */
-        public static Member[] toArray(List<Member> list) {
-            return list.toArray(EMPTY_ARRAY);
-        }
-
-        /**
-         * Convert to a list.  Instead of creating a new one, this method clears the passed list
-         * and adds elements to it.
-         */
-        public static void toList(Member[] array, List<Member> list) {
-            list.clear();
-            for (Member member : array) {
-                list.add(member);
-            }
-        }
     }
 
     /**