summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Chenjie Luo <cjluo@google.com> 2016-05-12 16:59:43 -0700
committer Chenjie Luo <cjluo@google.com> 2016-05-12 17:00:27 -0700
commite370b538ebb6ca1072f270aee3003faaa0d1deb2 (patch)
treea017eb725d9092a1d0a33a7447b75bad5e9283f0
parent7ac638702de3b8af0a02db764adb95f2d10d1524 (diff)
Add null pointer check in removeConnection
Bug: 28607777 Change-Id: I199ed75740796540d243ad9f507ab2511c9ed3c1
-rw-r--r--telecomm/java/android/telecom/ConnectionService.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java
index 9738a26b21a9..18da37376812 100644
--- a/telecomm/java/android/telecom/ConnectionService.java
+++ b/telecomm/java/android/telecom/ConnectionService.java
@@ -1187,12 +1187,14 @@ public abstract class ConnectionService extends Service {
/** {@hide} */
protected void removeConnection(Connection connection) {
- String id = mIdByConnection.get(connection);
connection.unsetConnectionService(this);
connection.removeConnectionListener(mConnectionListener);
- mConnectionById.remove(mIdByConnection.get(connection));
- mIdByConnection.remove(connection);
- mAdapter.removeCall(id);
+ String id = mIdByConnection.get(connection);
+ if (id != null) {
+ mConnectionById.remove(id);
+ mIdByConnection.remove(connection);
+ mAdapter.removeCall(id);
+ }
}
private String addConferenceInternal(Conference conference) {