This fixes #368.
--HG--
branch : trunk
diff --git a/jinja2/parser.py b/jinja2/parser.py
index 96980d1..1f5e12a 100644
--- a/jinja2/parser.py
+++ b/jinja2/parser.py
@@ -54,21 +54,26 @@
expected = []
for exprs in end_token_stack:
expected.extend(map(describe_token_expr, exprs))
- currently_looking = ' or '.join("'%s'" % describe_token_expr(expr)
- for expr in end_token_stack[-1])
+ if end_token_stack:
+ currently_looking = ' or '.join(
+ "'%s'" % describe_token_expr(expr)
+ for expr in end_token_stack[-1])
+ else:
+ currently_looking = None
if name is None:
message = ['Unexpected end of template.']
else:
message = ['Encountered unknown tag \'%s\'.' % name]
- if name is not None and name in expected:
- message.append('You probably made a nesting mistake. Jinja '
- 'is expecting this tag, but currently looking '
- 'for %s.' % currently_looking)
- else:
- message.append('Jinja was looking for the following tags: '
- '%s.' % currently_looking)
+ if currently_looking:
+ if name is not None and name in expected:
+ message.append('You probably made a nesting mistake. Jinja '
+ 'is expecting this tag, but currently looking '
+ 'for %s.' % currently_looking)
+ else:
+ message.append('Jinja was looking for the following tags: '
+ '%s.' % currently_looking)
if self._tag_stack:
message.append('The innermost block that needs to be '