Ignore malformed domains while ops with cookies

Koitharu 4 years ago
parent 1f5d02ddb0
commit 941cc61577
No known key found for this signature in database
GPG Key ID: 8E861F8CE6E7CE27

@ -11,7 +11,7 @@ internal class ReadmangaParser(
) : GroupleParser(MangaSource.READMANGA_RU, "readmangafun", 1) {
override val configKeyDomain = ConfigKey.Domain(
"readmanga.io",
"readmanga.live",
arrayOf("readmanga.io", "readmanga.live", "readmanga.me"),
)

@ -9,10 +9,7 @@ import okhttp3.HttpUrl
private const val SCHEME_HTTPS = "https"
fun CookieJar.insertCookies(domain: String, vararg cookies: String) {
val url = HttpUrl.Builder()
.scheme(SCHEME_HTTPS)
.host(domain)
.build()
val url = safeUrlOf(domain) ?: return
saveFromResponse(
url,
cookies.mapNotNull {
@ -22,18 +19,12 @@ fun CookieJar.insertCookies(domain: String, vararg cookies: String) {
}
fun CookieJar.insertCookie(domain: String, cookie: Cookie) {
val url = HttpUrl.Builder()
.scheme(SCHEME_HTTPS)
.host(domain)
.build()
val url = safeUrlOf(domain) ?: return
saveFromResponse(url, listOf(cookie))
}
fun CookieJar.getCookies(domain: String): List<Cookie> {
val url = HttpUrl.Builder()
.scheme(SCHEME_HTTPS)
.host(domain)
.build()
val url = safeUrlOf(domain) ?: return emptyList()
return loadForRequest(url)
}
@ -47,4 +38,13 @@ fun CookieJar.copyCookies(oldDomain: String, newDomain: String, names: Array<Str
}
url.host(newDomain)
saveFromResponse(url.build(), cookies)
}
private fun safeUrlOf(domain: String): HttpUrl? = try {
HttpUrl.Builder()
.scheme(SCHEME_HTTPS)
.host(domain)
.build()
} catch (_: IllegalArgumentException) {
null
}
Loading…
Cancel
Save