diff --git a/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java b/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java index 98ce37a4e..58dfa4e5f 100644 --- a/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java +++ b/src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java @@ -509,7 +509,7 @@ public class WebRTCWrapper { final CameraEnumerator enumerator = getCameraEnumerator(); final Set deviceNames = ImmutableSet.copyOf(enumerator.getDeviceNames()); for (final String deviceName : deviceNames) { - if (enumerator.isFrontFacing(deviceName)) { + if (isFrontFacing(enumerator, deviceName)) { final CapturerChoice capturerChoice = of(enumerator, deviceName, deviceNames); if (capturerChoice == null) { return Optional.absent(); @@ -525,6 +525,14 @@ public class WebRTCWrapper { } } + private static boolean isFrontFacing(final CameraEnumerator cameraEnumerator, final String deviceName) { + try { + return cameraEnumerator.isFrontFacing(deviceName); + } catch (final NullPointerException e) { + return false; + } + } + public PeerConnection.PeerConnectionState getState() { return requirePeerConnection().connectionState(); }