diff --git a/app/src/main/java/exh/md/network/MangaDexLoginHelper.kt b/app/src/main/java/exh/md/network/MangaDexLoginHelper.kt index 940e949c7..4b37cd3bc 100644 --- a/app/src/main/java/exh/md/network/MangaDexLoginHelper.kt +++ b/app/src/main/java/exh/md/network/MangaDexLoginHelper.kt @@ -71,7 +71,17 @@ class MangaDexLoginHelper(val authServiceLazy: Lazy, val pr suspend fun logout() { return withIOContext { - authService.logout() + try { + if (isAuthenticated()) { + authService.logout() + } else { + if (refreshToken()) { + authService.logout() + } + } + } catch (e: Exception) { + if (e is CancellationException) throw e + } } } }