int realResultSize = objectIterator.getResultSize();
if (status.intPageSize > 0 && stringToBoolean(getFilllastpage())) {
int pageOffset = status.offset - status.baseOffset;
int goBack = (pageOffset >= status.intPageSize ? status.intPageSize : pageOffset);
int newOffset = status.offset - goBack;
objectIterator.proceedToOffset(newOffset, stringToBoolean(getLinear()));
List results = new ArrayList<Object>();
for (int docsToFetch = 1; docsToFetch <= goBack + status.intPageSize; docsToFetch++) {
if (!objectIterator.hasNext()) {
realResultSize = newOffset + (docsToFetch - 1);