From efa5c7794d575014583f37af4e1eabad80c5571e Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 11 Dec 2025 17:07:55 +0100 Subject: [PATCH] Improve code --- .../libraries/qrcode/QRCodeAnalyzer.kt | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/libraries/qrcode/src/main/kotlin/io/element/android/libraries/qrcode/QRCodeAnalyzer.kt b/libraries/qrcode/src/main/kotlin/io/element/android/libraries/qrcode/QRCodeAnalyzer.kt index e9d43d86a3..168e898965 100644 --- a/libraries/qrcode/src/main/kotlin/io/element/android/libraries/qrcode/QRCodeAnalyzer.kt +++ b/libraries/qrcode/src/main/kotlin/io/element/android/libraries/qrcode/QRCodeAnalyzer.kt @@ -20,17 +20,19 @@ internal class QRCodeAnalyzer( private val reader by lazy { BarcodeReader() } override fun analyze(image: ImageProxy) { - if (image.format in SUPPORTED_IMAGE_FORMATS) { - try { - val bytes = reader.read(image).firstNotNullOfOrNull { it.bytes } - if (bytes != null) { - Timber.d("QR code scanned!") - onScanQrCode(bytes) + image.use { + if (image.format in SUPPORTED_IMAGE_FORMATS) { + try { + val bytes = reader.read(image).firstNotNullOfOrNull { it.bytes } + if (bytes != null) { + Timber.d("QR code scanned!") + onScanQrCode(bytes) + } + } catch (e: Exception) { + Timber.w(e, "Error decoding QR code") } - } catch (e: Exception) { - Timber.w(e, "Error decoding QR code") - } finally { - image.close() + } else { + Timber.w("Unsupported image format: ${image.format}") } } }