diff --git a/lib/src/client.dart b/lib/src/client.dart index ff23881..e75d5d0 100644 --- a/lib/src/client.dart +++ b/lib/src/client.dart @@ -509,10 +509,6 @@ class Client extends MatrixApi { final StreamController onLoginStateChanged = StreamController.broadcast(); - /// Synchronization erros are coming here. - final StreamController onError = - StreamController.broadcast(); - /// Synchronization erros are coming here. final StreamController onSyncError = StreamController.broadcast(); @@ -756,18 +752,17 @@ class Client extends MatrixApi { encryption.onSync(); } _retryDelay = Future.value(); - } on MatrixException catch (e) { - onError.add(e); + } on MatrixException catch (e, s) { + onSyncError.add(SdkError(exception: e, stackTrace: s)); + if (e.error == MatrixError.M_UNKNOWN_TOKEN) { + Logs.warning('The user has been logged out!'); + clear(); + } } catch (e, s) { if (!isLogged() || _disposed) return; Logs.error('Error during processing events: ' + e.toString(), s); onSyncError.add(SdkError( exception: e is Exception ? e : Exception(e), stackTrace: s)); - if (e is MatrixException && - e.errcode == MatrixError.M_UNKNOWN_TOKEN.toString().split('.').last) { - Logs.warning('The user has been logged out!'); - clear(); - } } }