diff --git a/Sources/Internal/Manager/CameraManager+MotionManager.swift b/Sources/Internal/Manager/CameraManager+MotionManager.swift index a1faaf9d2..607b51852 100644 --- a/Sources/Internal/Manager/CameraManager+MotionManager.swift +++ b/Sources/Internal/Manager/CameraManager+MotionManager.swift @@ -13,7 +13,7 @@ import CoreMotion import AVKit @MainActor class CameraManagerMotionManager { - private(set) var parent: CameraManager! + private(set) weak var parent: CameraManager! private(set) var manager: CMMotionManager = .init() } diff --git a/Sources/Internal/Manager/CameraManager+NotificationCenter.swift b/Sources/Internal/Manager/CameraManager+NotificationCenter.swift index 4f9aebe02..320c12350 100644 --- a/Sources/Internal/Manager/CameraManager+NotificationCenter.swift +++ b/Sources/Internal/Manager/CameraManager+NotificationCenter.swift @@ -12,7 +12,7 @@ import Foundation @MainActor class CameraManagerNotificationCenter { - private(set) var parent: CameraManager! + private(set) weak var parent: CameraManager! } // MARK: Setup diff --git a/Sources/Internal/Manager/CameraManager+PhotoOutput.swift b/Sources/Internal/Manager/CameraManager+PhotoOutput.swift index 107413496..b096c3564 100644 --- a/Sources/Internal/Manager/CameraManager+PhotoOutput.swift +++ b/Sources/Internal/Manager/CameraManager+PhotoOutput.swift @@ -12,7 +12,7 @@ import AVKit @MainActor class CameraManagerPhotoOutput: NSObject { - private(set) var parent: CameraManager! + private(set) weak var parent: CameraManager! private(set) var output: AVCapturePhotoOutput = .init() } diff --git a/Sources/Internal/Manager/CameraManager+VideoOutput.swift b/Sources/Internal/Manager/CameraManager+VideoOutput.swift index b5cb37a71..891bb75a5 100644 --- a/Sources/Internal/Manager/CameraManager+VideoOutput.swift +++ b/Sources/Internal/Manager/CameraManager+VideoOutput.swift @@ -14,7 +14,7 @@ import SwiftUI import MijickTimer @MainActor class CameraManagerVideoOutput: NSObject { - private(set) var parent: CameraManager! + private(set) weak var parent: CameraManager! private(set) var output: AVCaptureMovieFileOutput = .init() private(set) var timer: MTimer = .init(.camera) private(set) var recordingTime: MTime = .zero diff --git a/Sources/Internal/UI/Camera View/CameraView+Grid.swift b/Sources/Internal/UI/Camera View/CameraView+Grid.swift index 2648d79b9..88e03bc98 100644 --- a/Sources/Internal/UI/Camera View/CameraView+Grid.swift +++ b/Sources/Internal/UI/Camera View/CameraView+Grid.swift @@ -12,7 +12,7 @@ import SwiftUI class CameraGridView: UIView { - var parent: CameraManager! + weak var parent: CameraManager! } // MARK: Setup diff --git a/Sources/Internal/UI/Camera View/CameraView+Metal.swift b/Sources/Internal/UI/Camera View/CameraView+Metal.swift index 2741a24d7..92338dedd 100644 --- a/Sources/Internal/UI/Camera View/CameraView+Metal.swift +++ b/Sources/Internal/UI/Camera View/CameraView+Metal.swift @@ -14,7 +14,7 @@ import MetalKit import AVKit @MainActor class CameraMetalView: MTKView { - private(set) var parent: CameraManager! + private(set) weak var parent: CameraManager! private(set) var ciContext: CIContext! private(set) var commandQueue: MTLCommandQueue! private(set) var currentFrame: CIImage?