Skip to content

Commit

Permalink
fix: Ensure destination folder is always frozen
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilippeWeidmann committed Apr 30, 2024
1 parent 0da989b commit ce3de22
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
8 changes: 7 additions & 1 deletion Mail/Views/MoveEmailView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -92,9 +92,15 @@ struct MoveEmailView: View {

private func move(to folder: Folder) {
let frozenOriginFolder = originFolder?.freezeIfNeeded()
let frozenDestinationFolder = folder.freezeIfNeeded()

Task {
await tryOrDisplayError {
try await actionsManager.performMove(messages: movedMessages, from: frozenOriginFolder, to: folder)
try await actionsManager.performMove(
messages: movedMessages,
from: frozenOriginFolder,
to: frozenDestinationFolder
)
}
}
dismissModal()
Expand Down
5 changes: 3 additions & 2 deletions MailCore/Cache/MailboxManager/MailboxManager+Thread.swift
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import CocoaLumberjackSwift
import Foundation
import InfomaniakCore
import InfomaniakCoreDB
import InfomaniakCoreUI
import RealmSwift
import Sentry
Expand All @@ -31,8 +32,8 @@ public extension MailboxManager {
/// - Parameters:
/// - folder: Folder to fetch messages from
/// - fetchCurrentFolderCompleted: Completion once the messages have been fetched
func threads(folder: Folder, fetchCurrentFolderCompleted: (() -> Void) = {}) async throws {
try await messages(folder: folder.freezeIfNeeded())
func threads(@EnsureFrozen folder: Folder, fetchCurrentFolderCompleted: (() -> Void) = {}) async throws {
try await messages(folder: folder)
fetchCurrentFolderCompleted()

var roles: [FolderRole] {
Expand Down

0 comments on commit ce3de22

Please sign in to comment.