From 3c57c39814a194942308dfaf3903b39733a8433d Mon Sep 17 00:00:00 2001 From: Marc Rousavy Date: Mon, 3 Aug 2026 15:33:08 +0200 Subject: [PATCH] fix: Don't throw in `setTorchMode('off')` if device doesnt have a torch --- .../margelo/nitro/camera/hybrids/HybridCameraController.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/react-native-vision-camera/android/src/main/java/com/margelo/nitro/camera/hybrids/HybridCameraController.kt b/packages/react-native-vision-camera/android/src/main/java/com/margelo/nitro/camera/hybrids/HybridCameraController.kt index 337601a702..3616c2f331 100644 --- a/packages/react-native-vision-camera/android/src/main/java/com/margelo/nitro/camera/hybrids/HybridCameraController.kt +++ b/packages/react-native-vision-camera/android/src/main/java/com/margelo/nitro/camera/hybrids/HybridCameraController.kt @@ -210,6 +210,13 @@ class HybridCameraController( return Promise.async { when (mode) { TorchMode.OFF -> { + if (!camera.cameraInfo.hasFlashUnit()) { + // We want to turn off the torch, but the device + // doesn't have a flash. + // We can ignore this call so CameraX doesn't throw. + return@async + } + camera.cameraControl .enableTorch(false) .await()