From 31f67233dcf2a934498a8a1380ffbd7c5fe2f5e6 Mon Sep 17 00:00:00 2001 From: thirteenowls Date: Wed, 22 May 2024 03:23:37 +0200 Subject: [PATCH] Fix unnecessary request in sync pagination --- src/clients/pagination/iter.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/clients/pagination/iter.rs b/src/clients/pagination/iter.rs index 07813b56..54161c8f 100644 --- a/src/clients/pagination/iter.rs +++ b/src/clients/pagination/iter.rs @@ -55,13 +55,17 @@ where } match (self.req)(self.page_size, self.offset) { - Ok(page) if page.items.is_empty() => { - self.done = true; - None - } Ok(page) => { - self.offset += page.items.len() as u32; - Some(Ok(page)) + if page.next.is_none() { + self.done = true; + } + + if page.items.is_empty() { + None + } else { + self.offset += page.items.len() as u32; + Some(Ok(page)) + } } Err(e) => Some(Err(e)), }