Skip to content

Commit

Permalink
fix(SearchViewModel): Ensure only one search task is running
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilippeWeidmann committed Apr 5, 2023
1 parent beccc7e commit 809e17a
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions Mail/Views/Search/SearchViewModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ enum SearchState {
} else if !selectedFilters.contains(.folder) {
selectedFilters.append(.folder)
}
Task {

currentSearchTask?.cancel()
currentSearchTask = Task {
await fetchThreads()
}
}
Expand All @@ -87,6 +89,7 @@ enum SearchState {
private var resourceNext: String?
private var lastSearch = ""
private var searchFieldObservation: AnyCancellable?
private var currentSearchTask: Task<Void, Never>?

init(mailboxManager: MailboxManager, folder: Folder) {
self.mailboxManager = mailboxManager
Expand Down Expand Up @@ -157,7 +160,8 @@ enum SearchState {
contacts = []
}

Task {
currentSearchTask?.cancel()
currentSearchTask = Task {
await fetchThreads()
}
}
Expand Down

0 comments on commit 809e17a

Please sign in to comment.