From e113dee95e4071de5547026a104d5b98ed39329a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20D=E2=80=99Aquino?= Date: Wed, 20 Aug 2025 15:14:52 -0700 Subject: [PATCH] Publish "loading" variable update on the main thread to avoid undefined behaviour MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Daniel D’Aquino --- damus/Features/Search/Models/SearchHomeModel.swift | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/damus/Features/Search/Models/SearchHomeModel.swift b/damus/Features/Search/Models/SearchHomeModel.swift index 5820f02d..ae9505d8 100644 --- a/damus/Features/Search/Models/SearchHomeModel.swift +++ b/damus/Features/Search/Models/SearchHomeModel.swift @@ -40,7 +40,9 @@ class SearchHomeModel: ObservableObject { } func load() async { - loading = true + DispatchQueue.main.async { + self.loading = true + } let to_relays = damus_state.nostrNetwork.ourRelayDescriptors .map { $0.url } .filter { !damus_state.relay_filters.is_filtered(timeline: .search, relay_id: $0) } @@ -57,7 +59,9 @@ class SearchHomeModel: ObservableObject { case .eose: break } } - loading = false + DispatchQueue.main.async { + self.loading = false + } guard let txn = NdbTxn(ndb: damus_state.ndb) else { return } load_profiles(context: "universe", load: .from_events(events.all_events), damus_state: damus_state, txn: txn)