diff --git a/telecomm/java/android/telecom/Conference.java b/telecomm/java/android/telecom/Conference.java index 00e07afda4b18..f5c4eb1002248 100644 --- a/telecomm/java/android/telecom/Conference.java +++ b/telecomm/java/android/telecom/Conference.java @@ -665,7 +665,7 @@ public abstract class Conference extends Conferenceable { if (mPreviousExtraKeys != null) { List toRemove = new ArrayList(); for (String oldKey : mPreviousExtraKeys) { - if (!extras.containsKey(oldKey)) { + if (extras == null || !extras.containsKey(oldKey)) { toRemove.add(oldKey); } } @@ -681,7 +681,9 @@ public abstract class Conference extends Conferenceable { mPreviousExtraKeys = new ArraySet(); } mPreviousExtraKeys.clear(); - mPreviousExtraKeys.addAll(extras.keySet()); + if (extras != null) { + mPreviousExtraKeys.addAll(extras.keySet()); + } } /** diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index 3ea1c6a7663bd..d864833aa2b49 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -1821,7 +1821,7 @@ public abstract class Connection extends Conferenceable { if (mPreviousExtraKeys != null) { List toRemove = new ArrayList(); for (String oldKey : mPreviousExtraKeys) { - if (!extras.containsKey(oldKey)) { + if (extras == null || !extras.containsKey(oldKey)) { toRemove.add(oldKey); } } @@ -1836,7 +1836,9 @@ public abstract class Connection extends Conferenceable { mPreviousExtraKeys = new ArraySet(); } mPreviousExtraKeys.clear(); - mPreviousExtraKeys.addAll(extras.keySet()); + if (extras != null) { + mPreviousExtraKeys.addAll(extras.keySet()); + } } /** @@ -2251,7 +2253,7 @@ public abstract class Connection extends Conferenceable { */ public void sendConnectionEvent(String event, Bundle extras) { for (Listener l : mListeners) { - l.onConnectionEvent(this, event, null); + l.onConnectionEvent(this, event, extras); } } }