diff --git a/src/main/kotlin/top/jie65535/jcf/util/PagedList.kt b/src/main/kotlin/top/jie65535/jcf/util/PagedList.kt index 2d76015..c84e184 100644 --- a/src/main/kotlin/top/jie65535/jcf/util/PagedList.kt +++ b/src/main/kotlin/top/jie65535/jcf/util/PagedList.kt @@ -16,6 +16,7 @@ class PagedList( suspend fun prev(): Array { if (pageIndex > 0) { + _hasNext = true pageIndex-- } return current() @@ -32,10 +33,15 @@ class PagedList( return if (pageIndex < pages.size) { pages[pageIndex] } else { - val data = getPageData(pageIndex) - _hasNext = data.size == pageSize - pages.add(data) - data + val data = getPageData(pageIndex * pageSize) + if (data.isEmpty()) { + _hasNext = false + pages[--pageIndex] + } else { + _hasNext = data.size == pageSize + pages.add(data) + data + } } } -} \ No newline at end of file +}