From 6b764484d6f07a0877845638f581d105e98339aa Mon Sep 17 00:00:00 2001 From: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> Date: Fri, 9 Aug 2024 10:30:22 +0500 Subject: [PATCH] Kiryuu: fix image mime (#4507) --- src/id/kiryuu/build.gradle | 2 +- .../tachiyomi/extension/id/kiryuu/Kiryuu.kt | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/id/kiryuu/build.gradle b/src/id/kiryuu/build.gradle index 699c5d609..1052617ca 100644 --- a/src/id/kiryuu/build.gradle +++ b/src/id/kiryuu/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.Kiryuu' themePkg = 'mangathemesia' baseUrl = 'https://kiryuu.org' - overrideVersionCode = 7 + overrideVersionCode = 8 } apply from: "$rootDir/common.gradle" diff --git a/src/id/kiryuu/src/eu/kanade/tachiyomi/extension/id/kiryuu/Kiryuu.kt b/src/id/kiryuu/src/eu/kanade/tachiyomi/extension/id/kiryuu/Kiryuu.kt index 4f62f5c43..c51402513 100644 --- a/src/id/kiryuu/src/eu/kanade/tachiyomi/extension/id/kiryuu/Kiryuu.kt +++ b/src/id/kiryuu/src/eu/kanade/tachiyomi/extension/id/kiryuu/Kiryuu.kt @@ -2,7 +2,9 @@ package eu.kanade.tachiyomi.extension.id.kiryuu import eu.kanade.tachiyomi.multisrc.mangathemesia.MangaThemesia import eu.kanade.tachiyomi.network.interceptor.rateLimit +import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient +import okhttp3.ResponseBody.Companion.toResponseBody import org.jsoup.nodes.Document import java.text.SimpleDateFormat import java.util.Locale @@ -12,6 +14,21 @@ class Kiryuu : MangaThemesia("Kiryuu", "https://kiryuu.org", "id", dateFormat = override val id = 3639673976007021338 override val client: OkHttpClient = super.client.newBuilder() + .addInterceptor { chain -> + val response = chain.proceed(chain.request()) + val mime = response.headers["Content-Type"] + if (response.isSuccessful) { + if (mime != "application/octet-stream") { + return@addInterceptor response + } + // Fix image content type + val type = IMG_CONTENT_TYPE.toMediaType() + val body = response.body.bytes().toResponseBody(type) + return@addInterceptor response.newBuilder().body(body) + .header("Content-Type", IMG_CONTENT_TYPE).build() + } + response + } .rateLimit(4) .build() @@ -22,3 +39,5 @@ class Kiryuu : MangaThemesia("Kiryuu", "https://kiryuu.org", "id", dateFormat = override val hasProjectPage = true } + +private const val IMG_CONTENT_TYPE = "image/jpeg"