diff --git a/bitchat/ViewModels/ChatViewModel.swift b/bitchat/ViewModels/ChatViewModel.swift index 1e376c6c..b507f33a 100644 --- a/bitchat/ViewModels/ChatViewModel.swift +++ b/bitchat/ViewModels/ChatViewModel.swift @@ -2449,12 +2449,6 @@ final class ChatViewModel: ObservableObject, BitchatDelegate { Task.detached(priority: .userInitiated) { [weak self] in guard let self = self else { return } var processedURL: URL? - defer { - if let url = processedURL { - try? FileManager.default.removeItem(at: url) - } - cleanup?() - } do { let outputURL = try ImageUtils.processImage(at: sourceURL) processedURL = outputURL @@ -2490,7 +2484,11 @@ final class ChatViewModel: ObservableObject, BitchatDelegate { await MainActor.run { self.addSystemMessage("Failed to prepare image for sending.") } + if let url = processedURL { + try? FileManager.default.removeItem(at: url) + } } + cleanup?() } }