summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Ronacher <armin.ronacher@active-4.com>2017-01-03 01:53:33 +0100
committerArmin Ronacher <armin.ronacher@active-4.com>2017-01-03 23:45:30 +0100
commit05ad245d5e561ab9cae812006595250c235bb9ba (patch)
treec4d2dc5672a0daa39d5c67d904713ee32da65c2e
parent258eae66c545c25ecd48243a5ec4e78b28892a1b (diff)
downloadjinja2-05ad245d5e561ab9cae812006595250c235bb9ba.tar.gz
Small optimization for recursive loops
-rw-r--r--jinja2/compiler.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/jinja2/compiler.py b/jinja2/compiler.py
index 673dae6..162e73a 100644
--- a/jinja2/compiler.py
+++ b/jinja2/compiler.py
@@ -942,7 +942,8 @@ class CodeGenerator(NodeVisitor):
if node.else_:
self.writeline('%s = 0' % iteration_indicator)
self.outdent()
- self.leave_frame(loop_frame)
+ self.leave_frame(loop_frame, with_python_scope=node.recursive
+ and not node.else_)
if node.else_:
self.writeline('if %s:' % iteration_indicator)