diff -r e10510cb0ca1 -r 4308da4c8f58 trac/ticket/query.py
--- a/trac/ticket/query.py	Mon Dec 14 15:15:06 2009 +0100
+++ b/trac/ticket/query.py	Thu Dec 17 13:59:04 2009 +0100
@@ -286,6 +286,7 @@
             max = self.max
             if self.group:
                 max += 1
+            results=results[self.offset : self.offset+max]
             if (self.page > int(ceil(float(self.num_items) / self.max)) and
                 self.num_items != 0):
                 raise TracError(_('Page %(page)s is beyond the number of '
@@ -629,7 +630,8 @@
 
         results = Paginator(tickets,
                             self.page - 1,
-                            self.max)
+                            self.max,
+                            self.num_items)
         
         if req:
             if results.has_next_page:

