Skip to content

Commit

Permalink
Fix kwarg_expr eval issues on Python3
Browse files Browse the repository at this point in the history
  • Loading branch information
mikeboers committed Oct 8, 2012
1 parent 1f7b413 commit b709a17
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions haml/nodes.py
Expand Up @@ -193,15 +193,16 @@ def render_start(self, engine):
# guarantee it.
kwargs_code = compile('__update__(%s)' % kwargs_expr, '<kwargs_expr>', 'eval')
sandbox = __builtins__.copy()
del sandbox['__import__']
del sandbox['eval']
del sandbox['execfile']
sandbox.pop('__import__', None)
sandbox.pop('eval', None)
sandbox.pop('execfile', None)
def const_attrs_update(*args, **kwargs):
map(const_attrs.update, args)
for arg in args:
const_attrs.update(arg)
const_attrs.update(kwargs)
sandbox['__update__'] = const_attrs_update
eval(kwargs_code, sandbox)
except (NameError, ValueError, KeyError):
except (NameError, ValueError, KeyError) as e:
pass
else:
kwargs_expr = None
Expand Down

0 comments on commit b709a17

Please sign in to comment.