@@ -12,7 +12,7 @@ import UIKit
1212@available ( macCatalyst 14 . 0 , * )
1313extension CodeScannerView {
1414
15- public class ScannerViewController : UIViewController , UINavigationControllerDelegate {
15+ public final class ScannerViewController : UIViewController , UINavigationControllerDelegate {
1616 private let photoOutput = AVCapturePhotoOutput ( )
1717 private var isCapturing = false
1818 private var handler : ( ( UIImage ? ) -> Void ) ?
@@ -174,7 +174,7 @@ extension CodeScannerView {
174174 }
175175
176176 private func setupSession( ) {
177- guard let captureSession = captureSession else {
177+ guard let captureSession else {
178178 return
179179 }
180180
@@ -436,9 +436,12 @@ extension CodeScannerView {
436436extension CodeScannerView . ScannerViewController : AVCaptureMetadataOutputObjectsDelegate {
437437 public func metadataOutput( _ output: AVCaptureMetadataOutput , didOutput metadataObjects: [ AVMetadataObject ] , from connection: AVCaptureConnection ) {
438438 if let metadataObject = metadataObjects. first {
439- guard let readableObject = metadataObject as? AVMetadataMachineReadableCodeObject else { return }
440- guard let stringValue = readableObject. stringValue else { return }
441- guard !didFinishScanning && !isCapturing else { return }
439+ guard !parentView. isPaused && !didFinishScanning && !isCapturing,
440+ let readableObject = metadataObject as? AVMetadataMachineReadableCodeObject ,
441+ let stringValue = readableObject. stringValue
442+ else {
443+ return
444+ }
442445
443446 handler = { [ self ] image in
444447 let result = ScanResult ( string: stringValue, type: readableObject. type, image: image, corners: readableObject. corners)
0 commit comments