From 762ddd4a84009eeb92be61d66b3e93d1da70e53e Mon Sep 17 00:00:00 2001 From: Sharjeel Yunus Date: Mon, 3 Mar 2025 18:57:27 +0500 Subject: [PATCH] Fix: dispose existing camera controller before initializing a new one --- modules/camera/lib/camera.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/camera/lib/camera.dart b/modules/camera/lib/camera.dart index f5ec79644..7ef681c69 100644 --- a/modules/camera/lib/camera.dart +++ b/modules/camera/lib/camera.dart @@ -351,6 +351,12 @@ class CameraState extends EWidgetState with WidgetsBindingObserver { } Future setCamera({CameraDescription? cameraDescription}) async { + // If a camera controller has already been initialized, dispose it. + if (widget._controller.cameraController != null) { + await widget._controller.cameraController!.dispose(); + widget._controller.cameraController = null; + } + CameraDescription targetCamera = cameraDescription ?? cameras[0]; widget._controller.cameraController = CameraController(