From fc7c49a3f348cf72b7238b4d80c966f4a05cefaf Mon Sep 17 00:00:00 2001 From: Shane Krueger Date: Wed, 28 Jan 2026 22:39:34 -0500 Subject: [PATCH] Ensure SendCompletedAsync is called only one --- .../WebSockets/BaseSubscriptionServer.Observer.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Transports.AspNetCore/WebSockets/BaseSubscriptionServer.Observer.cs b/src/Transports.AspNetCore/WebSockets/BaseSubscriptionServer.Observer.cs index 2d3b7ab1..195368df 100644 --- a/src/Transports.AspNetCore/WebSockets/BaseSubscriptionServer.Observer.cs +++ b/src/Transports.AspNetCore/WebSockets/BaseSubscriptionServer.Observer.cs @@ -73,6 +73,8 @@ public async void OnNext(ExecutionResult value) await _server.SendDataAsync(_id, value); if (_closeAfterAnyError && value.Errors?.Count > 0) { + if (Interlocked.Exchange(ref _done, 1) == 1) + return; await _server.SendCompletedAsync(_id); } }