From f765f73fa372b3c176d32c4411cd7534be3df48f Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Wed, 27 Feb 2019 09:32:33 +0100 Subject: [PATCH] Fix setting batch size --- telethon/client/messages.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/telethon/client/messages.py b/telethon/client/messages.py index e8d27961..2ace90ed 100644 --- a/telethon/client/messages.py +++ b/telethon/client/messages.py @@ -121,23 +121,23 @@ class _MessagesIter(RequestIter): self.total = getattr(result, 'count', len(result.messages)) raise StopAsyncIteration + if self.wait_time is None: + self.wait_time = 1 if self.limit > 3000 else 0 + + # Telegram has a hard limit of 100. + # We don't need to fetch 100 if the limit is less. + self.batch_size = min(max(batch_size, 1), min(100, self.limit)) + # When going in reverse we need an offset of `-limit`, but we # also want to respect what the user passed, so add them together. if self.reverse: self.request.add_offset -= self.batch_size - if self.wait_time is None: - self.wait_time = 1 if self.limit > 3000 else 0 - self.add_offset = add_offset self.max_id = max_id self.min_id = min_id self.last_id = 0 if self.reverse else float('inf') - # Telegram has a hard limit of 100. - # We don't need to fetch 100 if the limit is less. - self.batch_size = min(max(batch_size, 1), min(100, self.limit)) - async def _load_next_chunk(self): result = []