From abd797b7b3c3c12cec355d86b7ad1bb6650afc57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20D=E2=80=99Aquino?= Date: Mon, 18 Aug 2025 18:12:46 -0700 Subject: [PATCH] Fix another race condition that leads to a memory error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Daniel D’Aquino --- damus/Core/Nostr/RelayPool.swift | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/damus/Core/Nostr/RelayPool.swift b/damus/Core/Nostr/RelayPool.swift index 33aae481..4026bebd 100644 --- a/damus/Core/Nostr/RelayPool.swift +++ b/damus/Core/Nostr/RelayPool.swift @@ -284,6 +284,7 @@ class RelayPool { return c } + @MainActor func queue_req(r: NostrRequestType, relay: RelayURL, skip_ephemeral: Bool) { let count = count_queued(relay: relay) guard count <= 10 else { @@ -326,7 +327,7 @@ class RelayPool { } guard relay.connection.isConnected else { - queue_req(r: req, relay: relay.id, skip_ephemeral: skip_ephemeral) + Task { await queue_req(r: req, relay: relay.id, skip_ephemeral: skip_ephemeral) } continue }