From 31f6421b134e4e83a459d2faa1009b33fefd6276 Mon Sep 17 00:00:00 2001 From: Andrew Jesaitis Date: Mon, 18 Mar 2013 14:29:37 -0600 Subject: Fixed #19938 -- Consumed iterator only once in paginator's Page Thanks Joshua Fialkoff for the report. --- django/core/paginator.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'django') diff --git a/django/core/paginator.py b/django/core/paginator.py index 9ccff51a34..c8b9377856 100644 --- a/django/core/paginator.py +++ b/django/core/paginator.py @@ -121,7 +121,9 @@ class Page(collections.Sequence): raise TypeError # The object_list is converted to a list so that if it was a QuerySet # it won't be a database hit per __getitem__. - return list(self.object_list)[index] + if not isinstance(self.object_list, list): + self.object_list = list(self.object_list) + return self.object_list[index] def has_next(self): return self.number < self.paginator.num_pages -- cgit v1.3