From d83d23685f434c6417e3f409ca01ac776d7b38ec Mon Sep 17 00:00:00 2001 From: bapeey <90949336+bapeey@users.noreply.github.com> Date: Thu, 20 Jun 2024 04:08:36 -0500 Subject: [PATCH] DemonSect: Fix downloads (#3634) Fix downloads --- src/pt/prismascans/build.gradle | 2 +- .../extension/pt/prismascans/DemonSect.kt | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/pt/prismascans/build.gradle b/src/pt/prismascans/build.gradle index ae312ca9f..e1c90aa42 100644 --- a/src/pt/prismascans/build.gradle +++ b/src/pt/prismascans/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.DemonSect' themePkg = 'madara' baseUrl = 'https://dsectcomics.org' - overrideVersionCode = 7 + overrideVersionCode = 8 } apply from: "$rootDir/common.gradle" diff --git a/src/pt/prismascans/src/eu/kanade/tachiyomi/extension/pt/prismascans/DemonSect.kt b/src/pt/prismascans/src/eu/kanade/tachiyomi/extension/pt/prismascans/DemonSect.kt index d69c7ab36..b58326a6f 100644 --- a/src/pt/prismascans/src/eu/kanade/tachiyomi/extension/pt/prismascans/DemonSect.kt +++ b/src/pt/prismascans/src/eu/kanade/tachiyomi/extension/pt/prismascans/DemonSect.kt @@ -4,7 +4,9 @@ import eu.kanade.tachiyomi.multisrc.madara.Madara import eu.kanade.tachiyomi.network.asObservable import eu.kanade.tachiyomi.network.interceptor.rateLimit import eu.kanade.tachiyomi.source.model.MangasPage +import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient +import okhttp3.ResponseBody.Companion.toResponseBody import okio.IOException import rx.Observable import java.text.SimpleDateFormat @@ -30,6 +32,20 @@ class DemonSect : Madara( } response } + .addInterceptor { chain -> + val response = chain.proceed(chain.request()) + val mime = response.headers["Content-Type"] + if (response.isSuccessful) { + if (mime == "application/octet-stream" || mime == null) { + // Fix image content type + val type = "image/jpeg".toMediaType() + val body = response.body.bytes().toResponseBody(type) + return@addInterceptor response.newBuilder().body(body) + .header("Content-Type", "image/jpeg").build() + } + } + response + } .rateLimit(1, 2, TimeUnit.SECONDS) .build()