[Checkins] SVN: Sandbox/malthe/chameleon.core/src/chameleon/core/codegen.py Make sure 'econtext' has been defined.

Malthe Borch mborch at gmail.com
Wed Nov 26 18:12:10 EST 2008


Log message for revision 93372:
  Make sure 'econtext' has been defined.

Changed:
  U   Sandbox/malthe/chameleon.core/src/chameleon/core/codegen.py

-=-
Modified: Sandbox/malthe/chameleon.core/src/chameleon/core/codegen.py
===================================================================
--- Sandbox/malthe/chameleon.core/src/chameleon/core/codegen.py	2008-11-26 17:34:30 UTC (rev 93371)
+++ Sandbox/malthe/chameleon.core/src/chameleon/core/codegen.py	2008-11-26 23:12:10 UTC (rev 93372)
@@ -139,7 +139,7 @@
     def visitName(self, node):
         # If the name refers to a local inside a lambda, list comprehension, or
         # generator expression, leave it alone
-        if not node.name in self.names:
+        if not node.name in self.names and 'econtext' in self.names:
             # Otherwise, translate the name ref into a context lookup
             func_args = [ast.Name('econtext'), ast.Const(node.name)]
             node = ast.CallFunc(ast.Name('_lookup_name'), func_args)
@@ -171,7 +171,7 @@
             source = source.encode('utf-8')
             
         node = parse(source, self.mode)
-
+        
         # build tree
         transform = TemplateASTTransformer(globals)
         tree = transform.visit(node)



More information about the Checkins mailing list