From 0f549f908cc892e578b5658c5f678fd81855e86e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sa=C3=BAl=20Ibarra=20Corretg=C3=A9?= Date: Fri, 30 Jul 2021 16:30:51 +0200 Subject: [PATCH] Catch RuntimeException on Camera.setDisplayOrientation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:13032 Change-Id: I3736e61b8f49ae058851d7f5d60858454e5d5b09 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227287 Reviewed-by: Xavier Lepaul‎ Commit-Queue: Xavier Lepaul‎ Cr-Commit-Position: refs/heads/main@{#34853} --- sdk/android/src/java/org/webrtc/Camera1Session.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sdk/android/src/java/org/webrtc/Camera1Session.java b/sdk/android/src/java/org/webrtc/Camera1Session.java index a439315ab8..6daaa27f1d 100644 --- a/sdk/android/src/java/org/webrtc/Camera1Session.java +++ b/sdk/android/src/java/org/webrtc/Camera1Session.java @@ -104,7 +104,13 @@ class Camera1Session implements CameraSession { } // Calculate orientation manually and send it as CVO insted. - camera.setDisplayOrientation(0 /* degrees */); + try { + camera.setDisplayOrientation(0 /* degrees */); + } catch (RuntimeException e) { + camera.release(); + callback.onFailure(FailureType.ERROR, e.getMessage()); + return; + } callback.onDone(new Camera1Session(events, captureToTexture, applicationContext, surfaceTextureHelper, cameraId, camera, info, captureFormat, constructionTimeNs));