From 4df95ddfdb1b21de7d1d4b6e8946681de0a765f4 Mon Sep 17 00:00:00 2001 From: openhands Date: Mon, 28 Apr 2025 18:26:36 +0000 Subject: [PATCH] Fix closure capturing memoryObserver before declaration --- iOS/Operations/CoreML/CoreMLManager.swift | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/iOS/Operations/CoreML/CoreMLManager.swift b/iOS/Operations/CoreML/CoreMLManager.swift index fa539cb..077703f 100644 --- a/iOS/Operations/CoreML/CoreMLManager.swift +++ b/iOS/Operations/CoreML/CoreMLManager.swift @@ -422,8 +422,9 @@ final class CoreMLManager { } } - // Store the observer in a local variable first - let memoryObserver = NotificationCenter.default.addObserver( + // Create the observer without capturing itself + var memoryObserver: NSObjectProtocol? + memoryObserver = NotificationCenter.default.addObserver( forName: UIApplication.didReceiveMemoryWarningNotification, object: nil, queue: .main @@ -438,14 +439,18 @@ final class CoreMLManager { } // Remove the observer itself - NotificationCenter.default.removeObserver(memoryObserver) + if let observer = memoryObserver { + NotificationCenter.default.removeObserver(observer) + } self?.isModelLoading = false completion?(false) } // Store the observer in the array for later cleanup - memoryObservers.append(memoryObserver) + if let observer = memoryObserver { + memoryObservers.append(observer) + } // Perform actual loading in background predictionQueue.async { [weak self] in