From 29f75ed03c6d17c5aabec9bdeebdbe8e82bc2dd1 Mon Sep 17 00:00:00 2001 From: Igor Solomennikov Date: Wed, 23 Feb 2022 17:29:26 -0800 Subject: [PATCH] Fix regression that caused crash when opening media library picker from chat. --- .../Photos/PhotoCaptureViewController.swift | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Signal/src/ViewControllers/Photos/PhotoCaptureViewController.swift b/Signal/src/ViewControllers/Photos/PhotoCaptureViewController.swift index 55df39d614..f281c4bed7 100644 --- a/Signal/src/ViewControllers/Photos/PhotoCaptureViewController.swift +++ b/Signal/src/ViewControllers/Photos/PhotoCaptureViewController.swift @@ -47,7 +47,7 @@ class PhotoCaptureViewController: OWSViewController, InteractiveDismissDelegate weak var delegate: PhotoCaptureViewControllerDelegate? weak var dataSource: PhotoCaptureViewControllerDataSource? - private var interactiveDismiss: PhotoCaptureInteractiveDismiss! + private var interactiveDismiss: PhotoCaptureInteractiveDismiss? public lazy var photoCapture = PhotoCapture() @@ -88,9 +88,10 @@ class PhotoCaptureViewController: OWSViewController, InteractiveDismissDelegate view.addGestureRecognizer(doubleTapToSwitchCameraGesture) if let navController = self.navigationController { - interactiveDismiss = PhotoCaptureInteractiveDismiss(viewController: navController) + let interactiveDismiss = PhotoCaptureInteractiveDismiss(viewController: navController) interactiveDismiss.interactiveDismissDelegate = self interactiveDismiss.addGestureRecognizer(to: view) + self.interactiveDismiss = interactiveDismiss } tapToFocusGesture.require(toFail: doubleTapToSwitchCameraGesture) @@ -360,7 +361,7 @@ class PhotoCaptureViewController: OWSViewController, InteractiveDismissDelegate override func viewDidLayoutSubviews() { super.viewDidLayoutSubviews() - guard !interactiveDismiss.interactionInProgress else { return } + guard !(interactiveDismiss?.interactionInProgress ?? false) else { return } // Clamp capture view to 16:9 on iPhones. var previewFrame = view.bounds