Skip to content

Commit 5db0234

Browse files
committed
Don't reuse MessageWebSockets
1 parent a2812d9 commit 5db0234

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

Signal-Windows.Lib/SignalWebSocket.cs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,25 @@ public ISignalWebSocket CreateSignalWebSocket(CancellationToken token, Uri uri)
2222
class SignalWebSocket : ISignalWebSocket
2323
{
2424
private readonly ILogger Logger = LibsignalLogging.CreateLogger<SignalWebSocket>();
25-
private readonly MessageWebSocket WebSocket;
25+
private MessageWebSocket WebSocket;
2626
private readonly SemaphoreSlim SemaphoreSlim = new SemaphoreSlim(1, 1);
2727
private readonly Uri SignalWSUri;
2828
private readonly CancellationToken Token;
2929
public event EventHandler<SignalWebSocketClosedEventArgs> Closed;
3030
public event EventHandler<SignalWebSocketMessageReceivedEventArgs> MessageReceived;
3131

3232
public SignalWebSocket(CancellationToken token, Uri uri)
33+
{
34+
CreateMessageWebSocket();
35+
Token = token;
36+
SignalWSUri = uri;
37+
}
38+
39+
private void CreateMessageWebSocket()
3340
{
3441
WebSocket = new MessageWebSocket();
3542
WebSocket.MessageReceived += WebSocket_MessageReceived;
3643
WebSocket.Closed += WebSocket_Closed;
37-
Token = token;
38-
SignalWSUri = uri;
3944
}
4045

4146
private void WebSocket_Closed(IWebSocket sender, WebSocketClosedEventArgs args)
@@ -79,6 +84,7 @@ public async Task ConnectAsync()
7984
{
8085
try
8186
{
87+
CreateMessageWebSocket();
8288
await WebSocket.ConnectAsync(SignalWSUri).AsTask(Token);
8389
SemaphoreSlim.Release();
8490
break;

0 commit comments

Comments
 (0)