@@ -197,14 +197,8 @@ public async Task<bool> Acquire(CoreDispatcher d, ISignalFrontend w) //TODO wrap
197
197
{
198
198
return false ;
199
199
}
200
- else
201
- {
202
- LikelyHasValidStore = true ;
203
- }
204
- var initNetwork = Task . Run ( async ( ) =>
205
- {
206
- await InitNetwork ( ) ;
207
- } ) ;
200
+ LikelyHasValidStore = true ;
201
+ InitNetwork ( ) ;
208
202
var recoverDownloadsTask = Task . Run ( ( ) =>
209
203
{
210
204
RecoverDownloads ( ) . Wait ( ) ;
@@ -281,7 +275,7 @@ await f.Key.RunAsync(CoreDispatcherPriority.Normal, () =>
281
275
} ) ;
282
276
if ( LikelyHasValidStore )
283
277
{
284
- await InitNetwork ( ) ;
278
+ InitNetwork ( ) ;
285
279
}
286
280
Running = true ;
287
281
}
@@ -892,20 +886,31 @@ private List<SignalConversation> GetConversations()
892
886
/// <summary>
893
887
/// Initializes the websocket connection handling. Must not not be called on a UI thread. Must not be called on a task which holds the handle lock.
894
888
/// </summary>
895
- private async Task InitNetwork ( )
889
+ private void InitNetwork ( )
896
890
{
897
891
try
898
892
{
899
893
MessageReceiver = new SignalServiceMessageReceiver ( LibUtils . ServiceConfiguration , new StaticCredentialsProvider ( Store . Username , Store . Password , Store . SignalingKey , ( int ) Store . DeviceId ) , LibUtils . USER_AGENT ) ;
900
- var pipeTask = MessageReceiver . CreateMessagePipe ( CancelSource . Token , new SignalWebSocketFactory ( ) ) ;
894
+ var pipeTask = Task . Run ( async ( ) =>
895
+ {
896
+ try
897
+ {
898
+ return await MessageReceiver . CreateMessagePipe ( CancelSource . Token , new SignalWebSocketFactory ( ) ) ;
899
+ }
900
+ catch ( Exception e )
901
+ {
902
+ Logger . LogError ( "InitNetwork failed: {0}\n {1}" , e . Message , e . StackTrace ) ;
903
+ await HandleAuthFailure ( ) ;
904
+ throw e ;
905
+ }
906
+ } ) ;
901
907
OutgoingMessages = new OutgoingMessages ( CancelSource . Token , pipeTask , Store , this ) ;
902
908
IncomingMessagesTask = Task . Factory . StartNew ( async ( ) => await new IncomingMessages ( CancelSource . Token , pipeTask , MessageReceiver ) . HandleIncomingMessages ( ) , TaskCreationOptions . LongRunning ) ;
903
909
OutgoingMessagesTask = Task . Factory . StartNew ( async ( ) => await OutgoingMessages . HandleOutgoingMessages ( ) , TaskCreationOptions . LongRunning ) ;
904
910
}
905
911
catch ( Exception e )
906
912
{
907
- Logger . LogError ( "InitNetwork failed: {0}\n {1}" , e . Message , e . StackTrace ) ;
908
- await HandleAuthFailure ( ) ;
913
+ Logger . LogError ( $ "InitNetwork() failed: { e . Message } \n { e . StackTrace } ") ;
909
914
}
910
915
}
911
916
0 commit comments