diff --git a/telecomm/java/android/telecom/Conference.java b/telecomm/java/android/telecom/Conference.java index 06851eeb7f208..1ce4ade8241ef 100644 --- a/telecomm/java/android/telecom/Conference.java +++ b/telecomm/java/android/telecom/Conference.java @@ -694,7 +694,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); } } @@ -710,7 +710,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 310c957c94faa..d83cdb8fa1484 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -1887,7 +1887,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); } } @@ -1902,7 +1902,9 @@ public abstract class Connection extends Conferenceable { mPreviousExtraKeys = new ArraySet(); } mPreviousExtraKeys.clear(); - mPreviousExtraKeys.addAll(extras.keySet()); + if (extras != null) { + mPreviousExtraKeys.addAll(extras.keySet()); + } } /** @@ -2317,7 +2319,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); } } }