From 074689c60e38942e57f2af0fd4e4c4ad8cc47b41 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sun, 22 Oct 2023 21:28:43 +0800 Subject: [PATCH] Fall back if failed to retrieve data from API --- .../kotlin/com/hippo/ehviewer/spider/SpiderQueen.kt | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/spider/SpiderQueen.kt b/app/src/main/kotlin/com/hippo/ehviewer/spider/SpiderQueen.kt index 0d8a64ca4..d048c8ead 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/spider/SpiderQueen.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/spider/SpiderQueen.kt @@ -30,7 +30,6 @@ import com.hippo.ehviewer.client.EhUrl.getGalleryMultiPageViewerUrl import com.hippo.ehviewer.client.EhUrl.referer import com.hippo.ehviewer.client.data.GalleryInfo import com.hippo.ehviewer.client.ehRequest -import com.hippo.ehviewer.client.exception.ParseException import com.hippo.ehviewer.client.exception.QuotaExceededException import com.hippo.ehviewer.client.execute import com.hippo.ehviewer.client.parser.GalleryDetailParser.parsePages @@ -650,7 +649,7 @@ class SpiderQueen private constructor(val galleryInfo: GalleryInfo) : CoroutineS } if (imageUrl == null) { - runCatching { + runSuspendCatching { EhEngine.getGalleryPageApi( mSpiderInfo.gid, index, @@ -664,13 +663,8 @@ class SpiderQueen private constructor(val galleryInfo: GalleryInfo) : CoroutineS originImageUrl = it.originImageUrl } }.onFailure { - if (it is ParseException && "Key mismatch" == it.message) { - // Show key is wrong, enter a new loop to get the new show key - if (showKey == localShowKey) showKey = null - return@repeat - } else { - throw it - } + forceHtml = true + return@repeat } }