From e8fe42b283d683931b8f5de5c44876a27c968dd8 Mon Sep 17 00:00:00 2001 From: marioplus Date: Mon, 11 Aug 2025 10:50:23 +0800 Subject: [PATCH] fix(BuonDua): resolve issue with loading more than 9 galleries (#10074) - Use URL of the last page to determine maximum page count #Closes: #9139 --- src/all/buondua/build.gradle | 2 +- .../eu/kanade/tachiyomi/extension/all/buondua/BuonDua.kt | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/all/buondua/build.gradle b/src/all/buondua/build.gradle index 52e98bad8..2c952f26b 100644 --- a/src/all/buondua/build.gradle +++ b/src/all/buondua/build.gradle @@ -1,7 +1,7 @@ ext { extName = 'Buon Dua' extClass = '.BuonDua' - extVersionCode = 4 + extVersionCode = 5 isNsfw = true } diff --git a/src/all/buondua/src/eu/kanade/tachiyomi/extension/all/buondua/BuonDua.kt b/src/all/buondua/src/eu/kanade/tachiyomi/extension/all/buondua/BuonDua.kt index 8b6cceb6e..87f1b707d 100644 --- a/src/all/buondua/src/eu/kanade/tachiyomi/extension/all/buondua/BuonDua.kt +++ b/src/all/buondua/src/eu/kanade/tachiyomi/extension/all/buondua/BuonDua.kt @@ -93,7 +93,11 @@ class BuonDua() : ParsedHttpSource() { val doc = response.asJsoup() val dateUploadStr = doc.selectFirst(".article-info > small")?.text() val dateUpload = DATE_FORMAT.tryParse(dateUploadStr) - val maxPage = doc.select("nav.pagination:first-of-type a.pagination-link").last()?.text()?.toInt() ?: 1 + // /xiuren-no-10051---10065-1127-photos-467c89d5b3e204eebe33ddbc54d905b1-47452?page=57 + val maxPage = doc.select("nav.pagination:first-of-type a.pagination-next").last() + ?.absUrl("href") + ?.toHttpUrl() + ?.queryParameter("page")?.toInt() ?: 1 val basePageUrl = response.request.url return (maxPage downTo 1).map { page -> SChapter.create().apply {