diff --git a/app/src/main/java/xyz/quaver/pupil/util/download/Cache.kt b/app/src/main/java/xyz/quaver/pupil/util/download/Cache.kt index 46c94eeb..98d2e09c 100644 --- a/app/src/main/java/xyz/quaver/pupil/util/download/Cache.kt +++ b/app/src/main/java/xyz/quaver/pupil/util/download/Cache.kt @@ -155,9 +155,11 @@ class Cache(context: Context) : ContextWrapper(context) { var retval: Reader? = null for (source in sources) { - retval = kotlin.runCatching { + retval = try { source.value.invoke() - }.getOrNull() + } catch (e: Exception) { + null + } if (retval != null) break diff --git a/libpupil/src/main/java/xyz/quaver/hiyobi/reader.kt b/libpupil/src/main/java/xyz/quaver/hiyobi/reader.kt index 873f0ce1..8ab1d083 100644 --- a/libpupil/src/main/java/xyz/quaver/hiyobi/reader.kt +++ b/libpupil/src/main/java/xyz/quaver/hiyobi/reader.kt @@ -16,6 +16,7 @@ package xyz.quaver.hiyobi +import kotlinx.serialization.UnstableDefault import kotlinx.serialization.json.Json import kotlinx.serialization.list import org.jsoup.Jsoup @@ -58,14 +59,14 @@ fun renewCookie() : String { } } +@UseExperimental(UnstableDefault::class) fun getReader(galleryID: Int) : Reader { val reader = "https://$hiyobi/reader/$galleryID" val url = "https://$hiyobi/data/json/${galleryID}_list.json" val title = Jsoup.connect(reader).get().title() - @Suppress("EXPERIMENTAL_API_USAGE") - val galleryInfo = Json.parse( + val galleryInfo = Json.nonstrict.parse( GalleryInfo.serializer().list, with(URL(url).openConnection() as HttpsURLConnection) { setRequestProperty("User-Agent", user_agent)