diff --git a/src/all/comicklive/build.gradle b/src/all/comicklive/build.gradle index bf9ccba8b..45b0f6d00 100644 --- a/src/all/comicklive/build.gradle +++ b/src/all/comicklive/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Comick (Unoriginal)' extClass = '.ComickFactory' - extVersionCode = 1 + extVersionCode = 2 isNsfw = true } diff --git a/src/all/comicklive/src/eu/kanade/tachiyomi/extension/all/comicklive/Comick.kt b/src/all/comicklive/src/eu/kanade/tachiyomi/extension/all/comicklive/Comick.kt index 30f9a0963..0a5831253 100644 --- a/src/all/comicklive/src/eu/kanade/tachiyomi/extension/all/comicklive/Comick.kt +++ b/src/all/comicklive/src/eu/kanade/tachiyomi/extension/all/comicklive/Comick.kt @@ -19,16 +19,17 @@ import keiyoushi.utils.firstInstanceOrNull import keiyoushi.utils.getPreferences import keiyoushi.utils.parseAs import keiyoushi.utils.tryParse -import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import okhttp3.CacheControl +import okhttp3.Call +import okhttp3.Callback import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.Request import okhttp3.Response import okhttp3.brotli.BrotliInterceptor import okhttp3.internal.closeQuietly +import okio.IOException import org.jsoup.Jsoup import java.text.SimpleDateFormat import java.util.Locale @@ -222,11 +223,18 @@ class Comick( // the cache only request fails if it was not cached already if (!response.isSuccessful) { - CoroutineScope(Dispatchers.IO).launch { - metadataClient.newCall( - GET("$baseUrl/api/metadata", headers, CacheControl.FORCE_NETWORK), - ).await().closeQuietly() - } + metadataClient.newCall( + GET("$baseUrl/api/metadata", headers, CacheControl.FORCE_NETWORK), + ).enqueue( + object : Callback { + override fun onResponse(call: Call, response: Response) { + response.closeQuietly() + } + override fun onFailure(call: Call, e: IOException) { + Log.e(name, "Unable to fetch filters", e) + } + }, + ) filters.addAll( index = 0, diff --git a/src/en/kagane/build.gradle b/src/en/kagane/build.gradle index d050ed9d8..bc56297ef 100644 --- a/src/en/kagane/build.gradle +++ b/src/en/kagane/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Kagane' extClass = '.Kagane' - extVersionCode = 8 + extVersionCode = 9 isNsfw = true } diff --git a/src/en/kagane/src/eu/kanade/tachiyomi/extension/en/kagane/Kagane.kt b/src/en/kagane/src/eu/kanade/tachiyomi/extension/en/kagane/Kagane.kt index a1aa97895..d6bfe5977 100644 --- a/src/en/kagane/src/eu/kanade/tachiyomi/extension/en/kagane/Kagane.kt +++ b/src/en/kagane/src/eu/kanade/tachiyomi/extension/en/kagane/Kagane.kt @@ -30,13 +30,13 @@ import eu.kanade.tachiyomi.source.online.HttpSource import keiyoushi.utils.getPreferencesLazy import keiyoushi.utils.parseAs import keiyoushi.utils.toJsonString -import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import kotlinx.serialization.json.buildJsonObject import kotlinx.serialization.json.put import okhttp3.CacheControl +import okhttp3.Call +import okhttp3.Callback import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.Interceptor import okhttp3.MediaType.Companion.toMediaType @@ -495,11 +495,18 @@ class Kagane : HttpSource(), ConfigurableSource { // the cache only request fails if it was not cached already if (!response.isSuccessful) { - CoroutineScope(Dispatchers.IO).launch { - metadataClient.newCall( - GET("$apiUrl/api/v1/metadata", headers, CacheControl.FORCE_NETWORK), - ).await().closeQuietly() - } + metadataClient.newCall( + GET("$apiUrl/api/v1/metadata", headers, CacheControl.FORCE_NETWORK), + ).enqueue( + object : Callback { + override fun onResponse(call: Call, response: Response) { + response.closeQuietly() + } + override fun onFailure(call: Call, e: IOException) { + Log.e(name, "Failed to fetch filters", e) + } + }, + ) filters.addAll( index = 0,