From d8eac62253f64ecf9ea1711765b0b97beaad09ad Mon Sep 17 00:00:00 2001 From: Infi Date: Sat, 26 Oct 2024 02:23:01 +0200 Subject: [PATCH] fix: unusable server when stale data in kv Signed-off-by: Infi --- app/src/main/java/chat/revolt/screens/chat/ChatRouterScreen.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/chat/revolt/screens/chat/ChatRouterScreen.kt b/app/src/main/java/chat/revolt/screens/chat/ChatRouterScreen.kt index acecf14a..655ad9a3 100644 --- a/app/src/main/java/chat/revolt/screens/chat/ChatRouterScreen.kt +++ b/app/src/main/java/chat/revolt/screens/chat/ChatRouterScreen.kt @@ -185,8 +185,9 @@ class ChatRouterViewModel @Inject constructor( val savedLastChannel = kvStorage.get("lastChannel/$serverId") val channelId = savedLastChannel ?: RevoltAPI.serverCache[serverId]?.channels?.firstOrNull() + val channelExists = RevoltAPI.channelCache.containsKey(channelId) - if (channelId != null) { + if (channelId != null && channelExists) { setSaveDestination(ChatRouterDestination.Channel(channelId)) } else { setSaveDestination(ChatRouterDestination.NoCurrentChannel(serverId))