diff --git a/twidere/src/main/java/org/mariotaku/twidere/task/twitter/GetStatusesTask.java b/twidere/src/main/java/org/mariotaku/twidere/task/twitter/GetStatusesTask.java index 8c862480a..348e2e13d 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/task/twitter/GetStatusesTask.java +++ b/twidere/src/main/java/org/mariotaku/twidere/task/twitter/GetStatusesTask.java @@ -141,7 +141,8 @@ public abstract class GetStatusesTask extends AbstractTask statuses = getStatuses(twitter, paging); InternalTwitterContentUtils.getStatusesWithQuoteData(twitter, statuses); - storeStatus(accountKey, statuses, sinceId, maxId, sinceSortId, maxSortId, true); + storeStatus(accountKey, statuses, sinceId, maxId, sinceSortId, maxSortId, + loadItemLimit, true); // TODO cache related data and preload final CacheUsersStatusesTask cacheTask = new CacheUsersStatusesTask(context); cacheTask.setParams(new TwitterWrapper.StatusListResponse(accountKey, statuses)); @@ -168,7 +169,7 @@ public abstract class GetStatusesTask extends AbstractTask statuses, final String sinceId, final String maxId, final long sinceSortId, final long maxSortId, - final boolean notify) { + int loadItemLimit, final boolean notify) { if (statuses == null || statuses.isEmpty() || accountKey == null) { return; } @@ -221,7 +222,7 @@ public abstract class GetStatusesTask extends AbstractTask 0 && ArrayUtils.contains(statusIds, maxId); final boolean noRowsDeleted = rowsDeleted == 0; final boolean insertGap = minIdx != -1 && (noRowsDeleted || deletedOldGap) && !noItemsBefore - && !hasIntersection; + && !hasIntersection && statuses.size() >= loadItemLimit; if (insertGap) { values[minIdx].put(Statuses.IS_GAP, true); }