fix: server version not fetched after auto login (#20713)

* fix: server version not fetched after auto login

* wrap get info with a try catch

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
shenlong 2025-08-06 18:31:16 +05:30 committed by GitHub
parent 0d9ebdc46a
commit 6ddef3a7e4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -6,6 +6,8 @@ import 'package:immich_mobile/entities/store.entity.dart';
import 'package:immich_mobile/providers/auth.provider.dart'; import 'package:immich_mobile/providers/auth.provider.dart';
import 'package:immich_mobile/providers/backup/backup.provider.dart'; import 'package:immich_mobile/providers/backup/backup.provider.dart';
import 'package:immich_mobile/providers/gallery_permission.provider.dart'; import 'package:immich_mobile/providers/gallery_permission.provider.dart';
import 'package:immich_mobile/providers/server_info.provider.dart';
import 'package:immich_mobile/providers/websocket.provider.dart';
import 'package:immich_mobile/routing/router.dart'; import 'package:immich_mobile/routing/router.dart';
import 'package:logging/logging.dart'; import 'package:logging/logging.dart';
@ -43,17 +45,24 @@ class SplashScreenPageState extends ConsumerState<SplashScreenPage> {
final accessToken = Store.tryGet(StoreKey.accessToken); final accessToken = Store.tryGet(StoreKey.accessToken);
if (accessToken != null && serverUrl != null && endpoint != null) { if (accessToken != null && serverUrl != null && endpoint != null) {
ref final infoProvider = ref.read(serverInfoProvider.notifier);
.read(authProvider.notifier) final wsProvider = ref.read(websocketProvider.notifier);
.saveAuthInfo(accessToken: accessToken) ref.read(authProvider.notifier).saveAuthInfo(accessToken: accessToken).then(
.then( (a) {
(a) => {log.info('Successfully updated auth info with access token: $accessToken')}, log.info('Successfully updated auth info with access token: $accessToken');
onError: (exception) => { try {
log.severe('Failed to update auth info with access token: $accessToken'), wsProvider.connect();
ref.read(authProvider.notifier).logout(), infoProvider.getServerInfo();
context.replaceRoute(const LoginRoute()), } catch (e) {
}, log.severe('Failed establishing connection to the server: $e');
); }
},
onError: (exception) => {
log.severe('Failed to update auth info with access token: $accessToken'),
ref.read(authProvider.notifier).logout(),
context.replaceRoute(const LoginRoute()),
},
);
} else { } else {
log.severe('Missing crucial offline login info - Logging out completely'); log.severe('Missing crucial offline login info - Logging out completely');
ref.read(authProvider.notifier).logout(); ref.read(authProvider.notifier).logout();