From 3f9054dd777a80cb6ccba0abcad8e2b43537c123 Mon Sep 17 00:00:00 2001 From: Luke Plant Date: Mon, 13 Sep 2010 22:31:17 +0000 Subject: [PATCH] Fixed #12965 - unordered_list template filter fails when given a non-iterable second item in a two item list Thanks to grahamu for the report and patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@13845 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/template/defaultfilters.py | 4 ++++ tests/regressiontests/defaultfilters/tests.py | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py index 739f50f235..b0b094bb70 100644 --- a/django/template/defaultfilters.py +++ b/django/template/defaultfilters.py @@ -601,6 +601,10 @@ def unordered_list(value, autoescape=None): first_item, second_item = list_ if second_item == []: return [first_item], True + try: + it = iter(second_item) # see if second item is iterable + except TypeError: + return list_, False old_style_list = True new_second_item = [] for sublist in second_item: diff --git a/tests/regressiontests/defaultfilters/tests.py b/tests/regressiontests/defaultfilters/tests.py index 8341f83e36..50aaf212ed 100644 --- a/tests/regressiontests/defaultfilters/tests.py +++ b/tests/regressiontests/defaultfilters/tests.py @@ -347,6 +347,17 @@ u'\t
  • item 1\n\t