From 9c2c583ad7c01d756462e437e5c33b3b75f90e96 Mon Sep 17 00:00:00 2001 From: Tyler Gunn Date: Fri, 16 Sep 2016 15:08:50 -0700 Subject: [PATCH] Fix potential NPE in RemoteConnection. When creating an instance of RemoteConnection, the code does not properly handle the case where the video provider is null. This could cause a RemoteConnection.VideoProvider to be created for a non-existent binder. Bug: 31372624 Change-Id: I990084e2d2d68cdf2dda426cb58ad68785b35422 --- telecomm/java/android/telecom/RemoteConnection.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/telecomm/java/android/telecom/RemoteConnection.java b/telecomm/java/android/telecom/RemoteConnection.java index dc8eaf640537..f0301155a322 100644 --- a/telecomm/java/android/telecom/RemoteConnection.java +++ b/telecomm/java/android/telecom/RemoteConnection.java @@ -638,7 +638,12 @@ public final class RemoteConnection { mConnectionCapabilities = connection.getConnectionCapabilities(); mConnectionProperties = connection.getConnectionProperties(); mVideoState = connection.getVideoState(); - mVideoProvider = new RemoteConnection.VideoProvider(connection.getVideoProvider()); + IVideoProvider videoProvider = connection.getVideoProvider(); + if (videoProvider != null) { + mVideoProvider = new RemoteConnection.VideoProvider(videoProvider); + } else { + mVideoProvider = null; + } mIsVoipAudioMode = connection.getIsVoipAudioMode(); mStatusHints = connection.getStatusHints(); mAddress = connection.getHandle(); -- 2.11.0