Parcourir la source

fix(LocalBook/EpubFile): skip to load Volume content

Xwite il y a 4 ans
Parent
commit
2c57e8e651
1 fichiers modifiés avec 5 ajouts et 6 suppressions
  1. 5 6
      app/src/main/java/io/legado/app/model/localBook/EpubFile.kt

+ 5 - 6
app/src/main/java/io/legado/app/model/localBook/EpubFile.kt

@@ -121,14 +121,11 @@ class EpubFile(var book: Book) {
     }
     }
 
 
     private fun getContent(chapter: BookChapter): String? {
     private fun getContent(chapter: BookChapter): String? {
-        val nextUrl = chapter.getVariable("nextUrl")
-        val startFragmentId = chapter.startFragmentId
-        val endFragmentId = chapter.endFragmentId
-        /*当前章节resource href 和下一章href相同时 应该视为二级目录 返回空白*/
-        //fix https://github.com/gedoor/legado/issues/1927 加载全部内容的bug
-        if (chapter.isVolume) return ""
         /*获取当前章节文本*/
         /*获取当前章节文本*/
         epubBook?.let { epubBook ->
         epubBook?.let { epubBook ->
+            val nextUrl = chapter.getVariable("nextUrl")
+            val startFragmentId = chapter.startFragmentId
+            val endFragmentId = chapter.endFragmentId
             val elements = Elements()
             val elements = Elements()
             var isChapter = false
             var isChapter = false
             /*一些书籍依靠href索引的resource会包含多个章节,需要依靠fragmentId来截取到当前章节的内容*/
             /*一些书籍依靠href索引的resource会包含多个章节,需要依靠fragmentId来截取到当前章节的内容*/
@@ -137,6 +134,8 @@ class EpubFile(var book: Book) {
                 if (chapter.url.substringBeforeLast("#") == res.href) {
                 if (chapter.url.substringBeforeLast("#") == res.href) {
                     elements.add(getBody(res, startFragmentId, endFragmentId))
                     elements.add(getBody(res, startFragmentId, endFragmentId))
                     isChapter = true
                     isChapter = true
+                   //fix https://github.com/gedoor/legado/issues/1927 加载全部内容的bug
+                   if (chapter.isVolume) break
                 } else if (isChapter) {
                 } else if (isChapter) {
                     if (nextUrl.isNullOrBlank() || res.href == nextUrl.substringBeforeLast("#")) {
                     if (nextUrl.isNullOrBlank() || res.href == nextUrl.substringBeforeLast("#")) {
                         break
                         break