diff --git a/src/Query/Query.php b/src/Query/Query.php index aa6c5c11..75578278 100644 --- a/src/Query/Query.php +++ b/src/Query/Query.php @@ -381,11 +381,13 @@ public function chunked($callback, $chunk_size = 10, $start_chunk = 1) { $this->limit = $chunk_size; $this->page = $start_chunk; + $handled_messages_count = 0; do { $messages = $this->populate($available_messages); + $handled_messages_count += $messages->count(); $callback($messages, $this->page); $this->page++; - } while ($this->limit * $this->page <= $available_messages_count); + } while ($handled_messages_count < $available_messages_count); $this->limit = $old_limit; $this->page = $old_page; }