You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
FairEmail/patches/PagedStorage.patch

30 lines
1.5 KiB

diff --git a/app/src/main/java/androidx/paging/PagedStorage.java b/app/src/main/java/androidx/paging/PagedStorage.java
index c644234c7ed..7b2cc1fc788 100644
--- a/app/src/main/java/androidx/paging/PagedStorage.java
+++ b/app/src/main/java/androidx/paging/PagedStorage.java
@@ -171,6 +171,10 @@ public T get(int i) {
// can only occur in tiled case, with untouched inner/placeholder pages
return null;
}
+ if (pageInternalIndex >= page.size()) {
+ eu.faircode.email.Log.e("PageStorage pageInternalIndex=" + pageInternalIndex + "/" + page.size());
+ return null;
+ }
return page.get(pageInternalIndex);
}
@@ -542,7 +546,12 @@ public void insertPage(int position, @NonNull List<T> page, @Nullable Callback c
// OK only if existing single page, and it's the last one
if (!onlyEndPagePresent && !addingLastPage) {
- throw new IllegalArgumentException("page introduces incorrect tiling");
+ //throw new IllegalArgumentException("page introduces incorrect tiling");
+ eu.faircode.email.Log.e("PagedStorage tiling" +
+ " size=" + newPageSize + "/" + mPageSize +
+ " addingLastPage=" + addingLastPage +
+ " onlyEndPagePresent=" + onlyEndPagePresent);
+ return;
}
if (onlyEndPagePresent) {
mPageSize = newPageSize;