From 773500568242842ead31352d62c6704f795c8808 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edgar=20Mej=C3=ADa?= Date: Wed, 20 Jan 2021 12:38:53 -0600 Subject: [PATCH] Fix tachiyomiorg#4800 (#5496) --- src/all/hitomi/build.gradle | 2 +- .../eu/kanade/tachiyomi/extension/all/hitomi/Hitomi.kt | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/all/hitomi/build.gradle b/src/all/hitomi/build.gradle index 05bcae870..383c9248d 100644 --- a/src/all/hitomi/build.gradle +++ b/src/all/hitomi/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'Hitomi.la' pkgNameSuffix = 'all.hitomi' extClass = '.HitomiFactory' - extVersionCode = 3 + extVersionCode = 4 libVersion = '1.2' containsNsfw = true } diff --git a/src/all/hitomi/src/eu/kanade/tachiyomi/extension/all/hitomi/Hitomi.kt b/src/all/hitomi/src/eu/kanade/tachiyomi/extension/all/hitomi/Hitomi.kt index 60d0e9674..7787b5777 100644 --- a/src/all/hitomi/src/eu/kanade/tachiyomi/extension/all/hitomi/Hitomi.kt +++ b/src/all/hitomi/src/eu/kanade/tachiyomi/extension/all/hitomi/Hitomi.kt @@ -283,12 +283,17 @@ open class Hitomi(override val lang: String, private val nozomiLang: String) : H val path = if (jsonElement["haswebp"].string == "0" || !hitomiAlwaysWebp()) "images" else "webp" val hashPath1 = hash.takeLast(1) val hashPath2 = hash.takeLast(3).take(2) - Page(i, "", "https://${subdomainFromGalleryId(hashPath2)}a.hitomi.la/$path/$hashPath1/$hashPath2/$hash.$ext") + + // https://ltn.hitomi.la/reader.js + // function make_image_element() + val secondSubdomain = if (jsonElement["haswebp"].string == "0" && jsonElement["hasavif"].string == "0") "b" else "a" + + Page(i, "", "https://${firstSubdomainFromGalleryId(hashPath2)}$secondSubdomain.hitomi.la/$path/$hashPath1/$hashPath2/$hash.$ext") } } // https://ltn.hitomi.la/common.js - private fun subdomainFromGalleryId(pathSegment: String): Char { + private fun firstSubdomainFromGalleryId(pathSegment: String): Char { var numberOfFrontends = 3 var g = pathSegment.toInt(16) if (g < 0x30) numberOfFrontends = 2